mirror of
https://github.com/reactos/wine.git
synced 2024-11-25 20:59:54 +00:00
Fixed some issues.
This commit is contained in:
parent
5db8d2f48b
commit
3724de93d7
@ -137,7 +137,7 @@ extern int get_alignment(int alignBoundary);
|
||||
|
||||
extern void add_import_dll( const char *name, int delay );
|
||||
extern void add_ignore_symbol( const char *name );
|
||||
extern int resolve_imports( FILE *outfile );
|
||||
extern int resolve_imports( void );
|
||||
extern int output_imports( FILE *outfile );
|
||||
extern void load_res32_file( const char *name );
|
||||
extern int output_resources( FILE *outfile );
|
||||
|
@ -317,7 +317,7 @@ static void remove_ignored_symbols(void)
|
||||
}
|
||||
|
||||
/* resolve the imports for a Win32 module */
|
||||
int resolve_imports( FILE *outfile )
|
||||
int resolve_imports( void )
|
||||
{
|
||||
int i, j;
|
||||
|
||||
|
@ -244,7 +244,10 @@ int main(int argc, char **argv)
|
||||
do_usage();
|
||||
break;
|
||||
}
|
||||
fclose( output_file );
|
||||
output_file_name = NULL;
|
||||
if (output_file_name)
|
||||
{
|
||||
fclose( output_file );
|
||||
output_file_name = NULL;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
@ -264,8 +264,6 @@ static void ParseExportFunction( ORDDEF *odp )
|
||||
fatal_error( "Too many arguments\n" );
|
||||
|
||||
odp->u.func.arg_types[i] = '\0';
|
||||
if ((odp->type == TYPE_STDCALL) && !i)
|
||||
odp->type = TYPE_CDECL; /* stdcall is the same as cdecl for 0 args */
|
||||
if (odp->type == TYPE_VARARGS)
|
||||
odp->flags |= FLAG_NORELAY; /* no relay debug possible for varags entry point */
|
||||
odp->link_name = xstrdup( GetToken(0) );
|
||||
|
@ -519,8 +519,8 @@ static void output_stub_funcs( FILE *outfile )
|
||||
fprintf( outfile, " void *rec, *addr;\n" );
|
||||
fprintf( outfile, " unsigned int params;\n" );
|
||||
fprintf( outfile, " const void *info[15];\n" );
|
||||
fprintf( outfile, " } rec;\n" );
|
||||
fprintf( outfile, " extern void RtlRaiseException( struct exc_record * );\n\n" );
|
||||
fprintf( outfile, " } rec;\n\n" );
|
||||
fprintf( outfile, " extern void __stdcall RtlRaiseException( struct exc_record * );\n\n" );
|
||||
fprintf( outfile, " rec.code = 0x%08x;\n", EXCEPTION_WINE_STUB );
|
||||
fprintf( outfile, " rec.flags = %d;\n", EH_NONCONTINUABLE );
|
||||
fprintf( outfile, " rec.rec = 0;\n" );
|
||||
@ -582,6 +582,13 @@ void BuildSpec16File( FILE *outfile )
|
||||
strupper( DLLName );
|
||||
|
||||
fprintf( outfile, "static const char dllname[] = \"%s\";\n\n", DLLName );
|
||||
|
||||
#ifdef __i386__
|
||||
fprintf( outfile, "#define __stdcall __attribute__((__stdcall__))\n\n" );
|
||||
#else
|
||||
fprintf( outfile, "#define __stdcall\n\n" );
|
||||
#endif
|
||||
|
||||
output_stub_funcs( outfile );
|
||||
|
||||
/* Build sorted list of all argument types, without duplicates */
|
||||
|
@ -441,7 +441,7 @@ void BuildSpec32File( FILE *outfile )
|
||||
AssignOrdinals();
|
||||
nr_exports = Base <= Limit ? Limit - Base + 1 : 0;
|
||||
|
||||
resolve_imports( outfile );
|
||||
resolve_imports();
|
||||
|
||||
fprintf( outfile, "/* File generated automatically from %s; do not edit! */\n\n",
|
||||
input_file_name );
|
||||
@ -451,7 +451,7 @@ void BuildSpec32File( FILE *outfile )
|
||||
fprintf( outfile, "extern char pe_header[];\n" );
|
||||
fprintf( outfile, "asm(\".section .text\\n\\t\"\n" );
|
||||
fprintf( outfile, " \".align %d\\n\"\n", get_alignment(page_size) );
|
||||
fprintf( outfile, " \"pe_header:\\t.fill %ld,1,0\\n\\t\");\n", page_size );
|
||||
fprintf( outfile, " \"" PREFIX "pe_header:\\t.fill %ld,1,0\\n\\t\");\n", page_size );
|
||||
|
||||
fprintf( outfile, "static const char dllname[] = \"%s\";\n\n", DLLName );
|
||||
fprintf( outfile, "extern int __wine_spec_exports[];\n\n" );
|
||||
|
Loading…
Reference in New Issue
Block a user