Some spotting wanted

Uwe Bonnes bon at elektron.ikp.physik.tu-darmstadt.de
Tue Oct 15 15:58:48 CDT 2002


Hallo,

I am trying to track down some (for me ) strange problems. The installer
swcadiii.exe from www.linear-tech.com-> Software->Switchercad aborts,
reporting some problem with gunzip. I think this is caused by _fclose
reporting the EOF error. I instrumented dlls/msvcrt/file.c like

/*********************************************************************
 *		fclose (MSVCRT.@)
 */
int MSVCRT_fclose(MSVCRT_FILE* file)
{
  int r;
  r=_close(file->_file);
  TRACE("r 0x%08x flag 0x%08x %s\n",r, file->_flag, 
      (file->_flag & MSVCRT__IOERR)?"MSVCRT__IOERR":"");
  return ((r==MSVCRT_EOF) || (file->_flag & MSVCRT__IOERR) ? MSVCRT_EOF :0);
}

While the trace in line 321037 shows that MSVCRT__IOERR is not set, the
return value implies that MSVCRT__IOERR is set.

I run on a dual celeron. Is msvcrt perhaps not thread safe?

Bye

  321020 088f9528:Call msvcrt.fclose(403de320) ret=00409ba6
  321021 08072e40:Ret  kernel32.LOCAL_Lock() retval=4038c85e ret=4083eb89
  321022 trace:msvcrt:_close :fd (3) handle (96)
  321023 08072e40:Call ntdll.RtlAllocateHeap(40380000,00000000,0000001c) ret=408442b8
  321024 088f9528:Call ntdll.RtlFreeHeap(40380000,00000000,403de320) ret=4072b2b5
  321025 08072e40:Ret  ntdll.RtlAllocateHeap() retval=403de370 ret=408442b8
  321026 088f9528:Ret  ntdll.RtlFreeHeap() retval=00000001 ret=4072b2b5
  321027 08072e40:Call ntdll.RtlAllocateHeap(40380000,00000000,00000020) ret=408442d5
  321028 trace:msvcrt:msvcrt_free_fd :fd (3) freed
  321029 08072e40:Ret  ntdll.RtlAllocateHeap() retval=403de320 ret=408442d5
  321030 088f9528:Call kernel32.CloseHandle(00000060) ret=4072730d
  321031 08072e40:Call kernel32.LOCAL_Unlock(000001e7,0000119a) ret=4083f0b1
  321032 08072e40:Ret  kernel32.LOCAL_Unlock() retval=00000000 ret=4083f0b1
  321033 088f9528:Ret  kernel32.CloseHandle() retval=00000001 ret=4072730d
  321034 08072e40:Call kernel32.LOCAL_Lock(000001e7,0000119a) ret=4083ef6a
  321035 trace:msvcrt:_close :ok
  321036 08072e40:Ret  kernel32.LOCAL_Lock() retval=4038c85e ret=4083ef6a
  321037 trace:msvcrt:MSVCRT_fclose r 0x00000000 flag 0x00000011 
  321038 08072e40:Call kernel32.LOCAL_Unlock(000001e7,0000119a) ret=4083f0b1
  321039 088f9528:Ret  msvcrt.fclose() retval=ffffffff ret=00409ba6

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

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------



More information about the wine-devel mailing list