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
a0ac6396
Commit
a0ac6396
authored
Nov 05, 2007
by
Dan Hipschman
Committed by
Alexandre Julliard
Nov 06, 2007
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
widl: Don't rely on type_memsize to return 0 for all conformant arrays.
parent
21f5afa6
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
14 additions
and
3 deletions
+14
-3
server.c
dlls/rpcrt4/tests/server.c
+12
-0
server.idl
dlls/rpcrt4/tests/server.idl
+1
-0
typegen.c
tools/widl/typegen.c
+1
-3
No files found.
dlls/rpcrt4/tests/server.c
View file @
a0ac6396
...
...
@@ -487,6 +487,16 @@ s_sum_pcarr2(int n, int **pa)
return
s_sum_conf_array
(
*
pa
,
n
);
}
int
s_sum_L1_norms
(
int
n
,
vector_t
*
vs
)
{
int
i
;
int
sum
=
0
;
for
(
i
=
0
;
i
<
n
;
++
i
)
sum
+=
abs
(
vs
[
i
].
x
)
+
abs
(
vs
[
i
].
y
)
+
abs
(
vs
[
i
].
z
);
return
sum
;
}
void
s_stop
(
void
)
{
...
...
@@ -983,6 +993,8 @@ array_tests(void)
make_pyramid_doub_carr
(
4
,
&
dc
);
ok
(
check_pyramid_doub_carr
(
dc
),
"RPC make_pyramid_doub_carr
\n
"
);
free_pyramid_doub_carr
(
dc
);
ok
(
sum_L1_norms
(
2
,
vs
)
==
21
,
"RPC sum_L1_norms
\n
"
);
}
static
void
...
...
dlls/rpcrt4/tests/server.idl
View file @
a0ac6396
...
...
@@ -298,6 +298,7 @@ cpp_quote("#endif")
void get_name([in,out] name_t *name);
int sum_pcarr2(int n, [size_is(, n)] int **pa);
int sum_L1_norms(int n, [size_is(n)] vector_t *vs);
void stop(void);
}
tools/widl/typegen.c
View file @
a0ac6396
...
...
@@ -1535,9 +1535,7 @@ static size_t write_array_tfs(FILE *file, const attr_list_t *attrs, type_t *type
has_pointer
=
TRUE
;
align
=
0
;
size
=
type_memsize
(
type
,
&
align
);
if
(
size
==
0
)
/* conformant array */
size
=
type_memsize
(
type
->
ref
,
&
align
);
size
=
type_memsize
((
is_conformant_array
(
type
)
?
type
->
ref
:
type
),
&
align
);
start_offset
=
*
typestring_offset
;
update_tfsoff
(
type
,
start_offset
,
file
);
...
...
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