Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
5f8c3b4a
Commit
5f8c3b4a
authored
Dec 09, 2008
by
Francois Gouget
Committed by
Alexandre Julliard
Dec 10, 2008
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msvcrt/tests: Stricter fstat() tests.
Don't allow fstat() to fail for no reason. Better check the st_mode field.
parent
48db9cef
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
39 deletions
+15
-39
file.c
dlls/msvcrt/tests/file.c
+15
-39
No files found.
dlls/msvcrt/tests/file.c
View file @
5f8c3b4a
...
...
@@ -903,23 +903,13 @@ static void test_stat(void)
fd
=
open
(
"stat.tst"
,
O_WRONLY
|
O_CREAT
|
O_BINARY
,
_S_IREAD
|
_S_IWRITE
);
if
(
fd
>=
0
)
{
if
(
fstat
(
fd
,
&
buf
)
==
0
)
{
if
((
buf
.
st_mode
&
_S_IFMT
)
==
_S_IFREG
)
{
ok
(
fstat
(
fd
,
&
buf
)
==
0
,
"fstat failed: errno=%d"
,
errno
);
ok
((
buf
.
st_mode
&
_S_IFMT
)
==
_S_IFREG
,
"bad format = %06o
\n
"
,
buf
.
st_mode
);
ok
(
buf
.
st_dev
==
0
,
"st_dev is %d, expected 0
\n
"
,
buf
.
st_dev
);
ok
(
buf
.
st_dev
==
buf
.
st_rdev
,
"st_dev (%d) and st_rdev (%d) differ
\n
"
,
buf
.
st_dev
,
buf
.
st_rdev
);
ok
(
buf
.
st_nlink
==
1
,
"st_nlink is %d, expected 1
\n
"
,
buf
.
st_nlink
);
ok
(
buf
.
st_size
==
0
,
"st_size is %d, expected 0
\n
"
,
buf
.
st_size
);
}
else
skip
(
"file is not a file?
\n
"
);
}
else
skip
(
"fstat failed, errno %d
\n
"
,
errno
);
ok
(
buf
.
st_dev
==
buf
.
st_rdev
,
"st_dev (%d) and st_rdev (%d) differ
\n
"
,
buf
.
st_dev
,
buf
.
st_rdev
);
ok
(
buf
.
st_nlink
==
1
,
"st_nlink is %d, expected 1
\n
"
,
buf
.
st_nlink
);
ok
(
buf
.
st_size
==
0
,
"st_size is %d, expected 0
\n
"
,
buf
.
st_size
);
close
(
fd
);
remove
(
"stat.tst"
);
}
...
...
@@ -929,19 +919,16 @@ static void test_stat(void)
/* Tests for a char device */
if
(
_dup2
(
0
,
10
)
==
0
)
{
if
(
fstat
(
10
,
&
buf
)
==
0
)
{
if
(
buf
.
st_mode
==
_S_IFCHR
)
ok
(
fstat
(
10
,
&
buf
)
==
0
,
"fstat(stdin) failed: errno=%d
\n
"
,
errno
);
if
((
buf
.
st_mode
&
_S_IFMT
)
==
_S_IFCHR
)
{
ok
(
buf
.
st_mode
==
_S_IFCHR
,
"bad st_mode=%06o
\n
"
,
buf
.
st_mode
);
ok
(
buf
.
st_dev
==
10
,
"st_dev is %d, expected 10
\n
"
,
buf
.
st_dev
);
ok
(
buf
.
st_rdev
==
10
,
"st_rdev is %d, expected 10
\n
"
,
buf
.
st_rdev
);
ok
(
buf
.
st_nlink
==
1
,
"st_nlink is %d, expected 1
\n
"
,
buf
.
st_nlink
);
}
else
skip
(
"stdin is not a char device?
\n
"
);
}
else
skip
(
"fstat failed with errno %d
\n
"
,
errno
);
skip
(
"stdin is not a char device? st_mode=%06o
\n
"
,
buf
.
st_mode
);
close
(
10
);
}
else
...
...
@@ -950,22 +937,11 @@ static void test_stat(void)
/* Tests for pipes */
if
(
_pipe
(
pipes
,
1024
,
O_BINARY
)
==
0
)
{
if
(
fstat
(
pipes
[
0
],
&
buf
)
==
0
)
{
if
(
buf
.
st_mode
==
_S_IFIFO
)
{
ok
(
buf
.
st_dev
==
pipes
[
0
],
"st_dev is %d, expected %d
\n
"
,
buf
.
st_dev
,
pipes
[
0
]);
ok
(
buf
.
st_rdev
==
pipes
[
0
],
"st_rdev is %d, expected %d
\n
"
,
buf
.
st_rdev
,
pipes
[
0
]);
ok
(
buf
.
st_nlink
==
1
,
"st_nlink is %d, expected 1
\n
"
,
buf
.
st_nlink
);
}
else
skip
(
"pipe() didn't make a pipe?
\n
"
);
}
else
skip
(
"fstat failed with errno %d
\n
"
,
errno
);
ok
(
fstat
(
pipes
[
0
],
&
buf
)
==
0
,
"fstat(pipe) failed: errno=%d
\n
"
,
errno
);
ok
(
buf
.
st_mode
==
_S_IFIFO
,
"bad st_mode=%06o
\n
"
,
buf
.
st_mode
);
ok
(
buf
.
st_dev
==
pipes
[
0
],
"st_dev is %d, expected %d
\n
"
,
buf
.
st_dev
,
pipes
[
0
]);
ok
(
buf
.
st_rdev
==
pipes
[
0
],
"st_rdev is %d, expected %d
\n
"
,
buf
.
st_rdev
,
pipes
[
0
]);
ok
(
buf
.
st_nlink
==
1
,
"st_nlink is %d, expected 1
\n
"
,
buf
.
st_nlink
);
close
(
pipes
[
0
]);
close
(
pipes
[
1
]);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment