[prev in list] [next in list] [prev in thread] [next in thread] 

List:       wine-devel
Subject:    Two winexecs on the some program seem to confused TASK_Reschedule
From:       Uwe Bonnes <bon () elektron ! ikp ! physik ! tu-darmstadt ! de>
Date:       1999-06-28 21:27:07
[Download RAW message or body]

Hallo,

I am trying to track down for the reason why an empty messagebox
appears in some other CDROM catalogue viewer (for the Schuricht
company (/dosd/finden/schucd/schucd.exe))

  9716  Call USER.1: MESSAGEBOX(0x0000,0x0a0f0010"",0x0a0f1180"",0x2010) ret=0997:00cb ds=0a0f

A DPMI crash later may or may not related. Running the programm with the
same arguments stand-alone doesn't bring up the messagebox. But here the
failure happens when the main programm calls winexec for the same
executable for the second time.

Here the first call:
  9245  Call KERNEL.166: WINEXEC(0x0327c0c0
	"L:\\rtdsk50w.exe -q -c 1024 -n Schuricht L:\\database\\schu.wr",
	0x0000) ret=02b7:27ec ds=0327
...
  9353  trace:task:TASK_Create module='rtdsk50w' 
	cmdline='-q -c 1024 -n Schuricht L:\database\schu.wr' task=09cf
...
  9370  Ret  KERNEL.166: WINEXEC() retval=0x099f ret=02b7:27ec ds=0327

and here the startup of the second Winexec:

  9661  Call KERNEL.166: WINEXEC(0x09f70148"rtdsk50w  -ga -n Schuricht -N2824",
	0x0007) ret=039f:9b9b ds=03a7
  9662  trace:module:get_makename_token returning token len=8, string=rtdsk50w
  9663  trace:module:make_lpCommandLine_name checking if file exists 'rtdsk50w'
  9664  trace:module:GetModuleFileName16 L:\SCHUCD.EXE
  9665  trace:module:make_lpCommandLine_name 1, selected file name 'L:\rtdsk50w.exe'
  9666      and cmdline as "  -ga -n Schuricht -N2824"
  9667  trace:module:GetModuleHandle16 (L:\rtdsk50w.exe)
  9668  trace:module:GetModuleHandle16 (KERNEL)
  9669  trace:task:TASK_Create module='rtdsk50w' cmdline='-ga -n Schuricht -N2824' task=0a37
  9670  trace:module:MODULE_GetLoadOrder Looking for 'USER32.DLL' (USER32), found 'user32'
  9671  trace:module:MODULE_LoadLibraryExA Trying built-in 'USER32.DLL'
  9672  trace:module:MODULE_LoadLibraryExA Loaded module 'USER32.DLL' at 0x408b0000, 
  9673  trace:module:MODULE_DllProcessAttach (USER32,(nil)) - START
  9674  trace:module:MODULE_InitDll (USER32,PROCESS_ATTACH,(nil)) - CALL
  9675  trace:relay:PE_InitDLL CallTo32(entryproc=0x8152d60,module=408b0000,type=1,res=(nil))
  9676  trace:module:MODULE_InitDll (USER32,PROCESS_ATTACH,(nil)) - RETURN 1
  9677  trace:module:MODULE_DllProcessAttach (USER32,(nil)) - END
  9678  trace:task:TASK_Reschedule entered with hCurrentTask 043f by hTask 043f (pid 10554)
  9679  trace:task:TASK_Reschedule      task = 0a37, events = 1
  9680  trace:task:TASK_Reschedule Switching to task 0a37 (rtdsk50w)
  9681  trace:relay:PROCESS_Start Starting Win16 process
  9682  trace:task:TASK_Reschedule entered with hCurrentTask 0a37 by hTask 0a37 (pid 10559)
  9683  trace:task:TASK_Reschedule      task = 01af, events = 0
  9684  trace:task:TASK_Reschedule      task = 09cf, events = 1
  9685  trace:task:TASK_Reschedule Switching to task 09cf (rtdsk50w)
  9686  trace:task:TASK_CallToStart Starting main program: cs:ip=0997:4f8a ds=0a0f ss:sp=099f:49b2
  9687  CallTo16(func=0997:4f8a,ds=0a0f) ss:sp=099f:49b2

For me it seems as if the TASK_Reschedule uses the task of the first
Winexec (09cf) when starting up the second one(0a37).

Bye

Uwe Bonnes                bon@elektron.ikp.physik.tu-darmstadt.de

Free Software: If you contribute nothing, expect nothing
--


=========================================================================

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic