[linux-audio-user] libfst: was: Steinberg The Grand

Werner Schweer ws at seh.de
Fri Jun 4 04:16:53 EDT 2004


On Thursday 03 June 2004 20:52, torbenh at 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 at 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





More information about the Linux-audio-user mailing list