On Thursday 03 June 2004 20:52, torbenh(a)gmx.de wrote:
On Thu, Jun 03, 2004 at 08:20:03PM +0200, Werner
Schweer wrote:
On Thursday 03 June 2004 19:33, Mark Knecht
wrote:
torbenh(a)gmx.de wrote:
my changed libwinelib.c looks like this:
int
SharedWineInit (void (*sighandler)(int,siginfo_t*,void*))
{
unsigned char Error[2024]="";
char *WineArguments[] = {"sharedapp", LIBPATH "/libfst.so",
NULL};
void* stackbase;
size_t stacksize;
void *ntdll;
void *ntso;
char ntdllpath[PATH_MAX+1];
char* dlerr;
char* env[] = { NULL };
sharedwine_signal_handler = sighandler;
if (setjmp (jump) == 0) {
wine_init (2, WineArguments, env, Error, sizeof (Error));
...
which wine version are you using ?
i really dont know where this env parameter comes from.
we have copied some code out of wine and libfst uses this.
(its the threading code from wine)
if this code is expected to behave differently than it does
your pretty much doomed.
its from cvs, last updated yesterday (03.06.2004).
please get your wine from
www.winehq.org
i tried again with wine-20040505. Calling fstconfig produces a core
dump. Gdb says:
(gdb) bt
#0 __pthread_sighandler (signo=11, ctx=
{gs = 0, __gsh = 0, fs = 51, __fsh = 0, es = 123, __esh = 0, ds = 123,
__dsh = 0, edi = 131120, esi = 0, ebp = 1080816716, esp = 1080816708, ebx =
1075170628, edx = 0, ecx = 1, eax = 1082129376, trapno = 14, err = 4, eip =
1075232782, cs = 115, __csh = 0, eflags = 2163206, esp_at_signal =
1080816708, ss = 123, __ssh = 0, fpstate = 0x0, oldmask = 2147483648, cr2 =
1082129788})
at sighandler.c:28
#1 <signal handler called>
#2 0x4016c00e in __pthread_internal_tsd_get (key=1077936127) at
specific.c:225
#3 0x400a434e in __libc_calloc (n=1, elem_size=1077936127) at malloc.c:3585
#4 0x400d7813 in __opendir (name=0x20000 <Address 0x20000 out of bounds>)
at ../sysdeps/unix/opendir.c:146
#5 0x40315820 in wine_nt_to_unix_file_name (nameW=0x406bfb58,
unix_name_ret=0x406bfb50, disposition=1, check_case=0 '\0')
at directory.c:873
#6 0x403164e0 in RtlDoesFileExists_U (file_name=0x40380750)
at directory.c:1215
#7 0x40328273 in RtlDosSearchPath_U (paths=0x40380510, search=0x406bfe08,
ext=0x0, buffer_size=64, buffer=0x406bfd2c, file_part=0x406bfc68)
at path.c:428
#8 0x40320e29 in load_dll (load_path=0x40380510, libname=0x406bfe08, flags=0,
pwm=0x406bfe00) at loader.c:1359
#9 0x40320093 in fixup_imports (wm=0x403806c8, load_path=0x40380510)
at loader.c:384
#10 0x40322262 in LdrInitializeThunk (main_file=0x0, unknown2=0, unknown3=0,
unknown4=0) at loader.c:1930
#11 0x4051296b in start_process (arg=0x0) at process.c:822
its essential the same as in the current wine cvs version.
My system uses glibc 2.3.2, linux 2.6.7-rc1 (no nptl).
/werner