Changes between Initial Version and Version 2 of Ticket #135


Ignore:
Timestamp:
Jul 5, 2007, 2:25:49 AM (17 years ago)
Author:
Steven Levine
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #135

    • Property Status newassigned
  • Ticket #135 – Description

    initial v2  
    11Seek and scan can crash when searching EAs.
    22
     3{{{
    34P1=00000002  P2=00000008  P3=XXXXXXXX  P4=XXXXXXXX
    45CS:EIP=005b:12d9390e  CSACC=f0df  CSLIM=ffffffff
     
    1112FS=150b  FSACC=00f3  FSLIM=00000030
    1213GS=0000  GSACC=****  GSLIM=*******
     14}}}
    1315
    1416This is in _nfree.
     
    1618# dd ss:esp
    1719
     20{{{
    18210053:00e3e6e0  00000000 00403748 00400000 12d8cbc5
    19220053:00e3e6f0  00e3e9f8 00403730 004037f8 00000042
     
    24270053:00e3e740  00e40c98 0040377c 00000000 0000fffd
    25280053:00e3e750  00400012 00e3e700 00e3e898 00e3e898
     29}}}
    2630
    2731Looking at the stack finds
    2832
     33{{{
    2934# ln %12d8cbc5
    3035%12d8cb80 FM3DLL _nfree_ + 45
    3136# ln %12db3c34
    32 %12db3c22 FM3DLL Free_FEAList_ + 12
     37%12db3c22 FM3DLL !Free_FEAList_ + 12
    3338# ln %12dbdfa8
    34 %12dbd5b1 FM3DLL GrepThread_ + 9f7
     39%12dbd5b1 FM3DLL !GrepThread_ + 9f7
    3540# ln %1ffc3db8
     41}}}
    3642
    37 I suspect the error is in GetFileEAs().  There's probably a one character overflow because the code is not properly accounting for the extra character copied when attempting to place a nul at then end of each EA.
     43I suspect the error is in !GetFileEAs().  There's probably a one character overflow because the code is not properly accounting for the extra character copied when attempting to place a nul at then end of each EA.
    3844
    39 The reason this is showing up is most likely because VAC defaulted to pack(4), IIRC, and OpenWatcom defaults to pack(1).
     45The reason this is showing up is most likely because VAC defaulted to pack(4), IIRC, and !OpenWatcom defaults to pack(1).