下面是不是bug?
CnProjectViewBaseFrm.pas 内的,当我鼠标双击时View时,fastMM报一个地址找不到错误,这个错误难重复实现,老大请检查,
procedure TCnProjectViewBaseForm.lvListSelectItem(Sender: TObject;
Item: TListItem; Selected: Boolean);
begin
//ItemChange(双击与单击都能触发吧?),下面这句是应是指定application在空间时执行DoSelectItemChanged
CnWizNotifierServices.ExecuteOnApplicationIdle(DoSelectItemChanged);
end;
procedure TCnProjectViewBaseForm.DoSelectItemChanged(Sender: TObject);
begin
//当application在空间时执行DoSelectItemChanged,但是CnProjectViewBaseForm假设已经被释放,这里就有可能产生内存地址找不到
//咋改呢?老大看看,哈哈,也可能是fastMM乱报的
UpdateStatusBar;
StatusBar.Invalidate;
end;
下面是出错的log
---------------------------
bds.exe: Memory Error Detected
---------------------------
FastMM has detected an attempt to call a virtual method on a freed object. An access violation will now be raised in order to abort the current operation.
Virtual method: Offset +312
The allocation number was: 106987900
Stack trace of when the object was allocated (return addresses):
20003DAE [sys\system.pas][System][System.@GetMem][2654]
20003DEB [sys\system.pas][System][System.@ReallocMem][2762]
20031A09 [common\Classes.pas][Classes][Classes.TList.SetCapacity][3136]
200317FC [common\Classes.pas][Classes][Classes.TList.Grow][3012]
20031601 [common\Classes.pas][Classes][Classes.TList.Add][2920]
20A6E90F [CodeMgr.pas][CodeMgr][CodeMgr.TScanner.AddLineSourcePos][1744]
2168E387 [PasMgr.pas][PasMgr][PasMgr.TPascalScanner.NextToken][2081]
2168EA56 [PasMgr.pas][PasMgr][PasMgr.TPascalScanner.NextSymbol][2444]
2168FB6E [PasMgr.pas][PasMgr][PasMgr.TPascalScanner.SkipTo][2841]
Stack trace of when the object was subsequently freed (return addresses):
D26291 [FastMM4.pas][FastMM4][FastMM4.DebugFreeMem][6054]
20003DEB [sys\system.pas][System][System.@ReallocMem][2762]
20031A09 [common\Classes.pas][Classes][Classes.TList.SetCapacity][3136]
200317FC [common\Classes.pas][Classes][Classes.TList.Grow][3012]
20031601 [common\Classes.pas][Classes][Classes.TList.Add][2920]
20A6E90F [CodeMgr.pas][CodeMgr][CodeMgr.TScanner.AddLineSourcePos][1744]
2168E387 [PasMgr.pas][PasMgr][PasMgr.TPascalScanner.NextToken][2081]
2168FE16 [PasMgr.pas][PasMgr][PasMgr.TPascalScanner.TokenIdentIs][2914]
20D6B226 [Symbols.pas][Symbols][Symbols.TSymbolTable.FindSymbol][268]
The current stack trace leading to this error (return addresses):
101889DB [ProjectExtWizard\CnProjectViewBaseFrm.pas][CnProjectViewBaseFrm][TCnProjectViewBaseForm.DoSelectItemChanged][624]
10139564 [Utils\CnWizNotifier.pas][CnWizNotifier][TCnWizNotifierServices.DoIdleExecute][1711]
1013916B [Utils\CnWizNotifier.pas][CnWizNotifier][TCnWizNotifierServices.DoApplicationIdle][1612]
201D1768 [appevnts.pas][AppEvnts][AppEvnts.TCustomApplicationEvents.DoIdle][216]
201D1F83 [appevnts.pas][AppEvnts][AppEvnts.TMultiCaster.DoIdle][478]
201632E3 [Forms.pas][Forms][Forms.TApplication.Idle][8533]
2016263C [Forms.pas][Forms][Forms.TApplication.HandleMessage][8124]
20162924 [Forms.pas][Forms][Forms.TApplication.Run][8223]
42297F [bds.dpr][bds][bds.bds][195]
Current memory dump of 256 bytes starting at pointer address 12E28D8:
F8 0D D3 00 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
? . ? . ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
---------------------------
确定
---------------------------
|