Author Topic: beta 1 crashes after calling thru NULL pointer  (Read 3583 times)

os2bird

  • Senior Community Member
  • Posts: 114
  • Hero Points: 13
beta 1 crashes after calling thru NULL pointer
« on: April 29, 2013, 01:24:04 PM »
Tried out VS 18.0.0.5 on 32-bit windows 7, upgrading from 17.0.2. Found several scenarios where it would crash because of a call to address 0. It happens when re-wrapping javadoc comment as well as on editor exit. I'm always having a pretty big workspace open (10000+ files) when this happens.
This bug makes editing a bit like walking a mine field...

WinDbg isn't able to tell me much, but maybe this is of some help to someone:
Code: [Select]
0:000> r
eax=00000001 ebx=00000001 ecx=11559700 edx=115596f8 esi=14bea1e0 edi=5fa99cb8
eip=00000000 esp=00317e6c ebp=00000000 iopl=0         nv up ei pl zr na pe nc
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00010246
00000000 ??              ???
0:000> k
ChildEBP RetAddr 
WARNING: Frame IP not in any known module. Following frames may be wrong.
00317e68 5f6eb22f 0x0
00000000 00000000 vsapi!vsNameDllAddr+0x17df
0:000> dd ss:esp
0023:00317e6c  5f6eb22f 0000044d 02726760 00000000
0023:00317e7c  00000002 06b106a0 0ddc408a 00000000
0023:00317e8c  00000001 01770000 00000004 00000000
0023:00317e9c  00000001 00000000 0ddc4084 00000000
0023:00317eac  00000000 00000000 15f62080 00000001
0023:00317ebc  15f623f0 00317ed8 774c2c78 15f623f8
0023:00317ecc  00000000 70e20174 15f623f0 00317eec
0023:00317edc  7596c3d4 01770000 00000000 15f623f8
0:000> ln 5f6eb22f
(5f6e9a50)   vsapi!vsNameDllAddr+0x17df   |  (5f6efee0)   vsapi!vsStrPosGetFlags
0:000> u 5f6eb22f - 20
vsapi!vsNameDllAddr+0x17bf:
5f6eb20f f4              hlt
5f6eb210 ff              ???
5f6eb211 ff              ???
5f6eb212 e996010000      jmp     vsapi!vsNameDllAddr+0x195d (5f6eb3ad)
5f6eb217 8b442434        mov     eax,dword ptr [esp+34h]
5f6eb21b 0fb64802        movzx   ecx,byte ptr [eax+2]
5f6eb21f 034c241c        add     ecx,dword ptr [esp+1Ch]
5f6eb223 8a5803          mov     bl,byte ptr [eax+3]
0:000> u
vsapi!vsNameDllAddr+0x17d6:
5f6eb226 8b148d10c5885f  mov     edx,dword ptr vsapi!vAbstractDockAreaRootParent::staticMetaObject+0x2cdac (5f88c510)[ecx*4]
5f6eb22d ffd2            call    edx
^^^^^^^^ - bad call? Only it doesn't immediately make any sense since edx isn't zero...
5f6eb22f 803dd973a95f02  cmp     byte ptr [vsapi!vAbstractDockAreaRootParent::staticMetaObject+0x237c75 (5fa973d9)],2
5f6eb236 8be8            mov     ebp,eax
5f6eb238 7511            jne     vsapi!vsNameDllAddr+0x17fb (5f6eb24b)

Kind Regards,
 bird.

patrick

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 1818
  • Hero Points: 151
Re: beta 1 crashes after calling thru NULL pointer
« Reply #1 on: April 29, 2013, 04:15:25 PM »
Reproduced it, and debugging it.  Thanks for the report.

patrick

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 1818
  • Hero Points: 151
Re: beta 1 crashes after calling thru NULL pointer
« Reply #2 on: April 29, 2013, 05:21:43 PM »
Fixed for the next beta.  Thanks again for the report.

os2bird

  • Senior Community Member
  • Posts: 114
  • Hero Points: 13
Re: beta 1 crashes after calling thru NULL pointer
« Reply #3 on: April 29, 2013, 07:09:32 PM »
Thanks!
 -bird