Commit 5919ae42 authored by Alexandre Julliard's avatar Alexandre Julliard

Added support for automatic ordinal allocation.

Output list of function names in sorted order. Added support for nameless (ordinal-only) entry points. Cleaned up error handling.
parent c553924d
...@@ -537,10 +537,9 @@ ENTRYPOINT32 BUILTIN32_GetEntryPoint( char *buffer, void *relay, ...@@ -537,10 +537,9 @@ ENTRYPOINT32 BUILTIN32_GetEntryPoint( char *buffer, void *relay,
for (i = 0; i < dll->descr->nb_names; i++) for (i = 0; i < dll->descr->nb_names; i++)
if (dll->descr->ordinals[i] == ordinal) break; if (dll->descr->ordinals[i] == ordinal) break;
assert( i < dll->descr->nb_names );
sprintf( buffer, "%s.%d: %s", dll->descr->name, ordinal + dll->descr->base, sprintf( buffer, "%s.%d: %s", dll->descr->name, ordinal + dll->descr->base,
dll->descr->names[i] ); (i < dll->descr->nb_names) ? dll->descr->names[i] : "@" );
*typemask = dll->descr->argtypes[ordinal]; *typemask = dll->descr->argtypes[ordinal];
return dll->descr->functions[ordinal]; return dll->descr->functions[ordinal];
} }
......
...@@ -70,7 +70,8 @@ Function ordinals: ...@@ -70,7 +70,8 @@ Function ordinals:
This type defines a function entry point. The prototype defined by This type defines a function entry point. The prototype defined by
"EXPORTNAME ([ARGTYPE [ARGTYPE [...]]])" specifies the name available for "EXPORTNAME ([ARGTYPE [ARGTYPE [...]]])" specifies the name available for
dynamic linking and the format of the arguments. "ORDINAL" is replaced dynamic linking and the format of the arguments. "ORDINAL" is replaced
by the ordinal number corresponding to the function. by the ordinal number corresponding to the function, or "@" for
automatic ordinal allocation (Win32 only).
"FUNCTYPE" should be one of: "FUNCTYPE" should be one of:
- "pascal16" for a Win16 function returning a 16-bit value - "pascal16" for a Win16 function returning a 16-bit value
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment