Index > Scribe > Inscribe 2.0 crashing frequently under XP | |
---|---|
Author/Date | Inscribe 2.0 crashing frequently under XP |
JohnH 14/08/2014 7:28pm | I have just upgraded to Inscribe 2.0 build 60 and have converted by mail folder to 3.0, mail folder size is 730KB (Database.sqlite)
I am running Windows XP with AVG anti virus INSCRIBE is crashing very frequently with crashes every minute or so of active use. Can you suggest any solutions please - This is otherwise a great email client because of its portability. Thanks |
fret 14/08/2014 10:34pm | When it crashes what does the crash dialog say?
Does it write a crash dump somewhere and tell you the path? If it does then post the file to me and I'll have a look. In the meantime I'll run it in my XP virtual machine and see if I can reproduce the issue. |
Scott 03/09/2014 8:45am | I'm getting excessive crashes as well. Below is some info from WhatIsHang (goofy name for an app) (hopefully it's useful). I've provided two captures. Repeated captures results in slightly different results. It's looking like there's a filter that is triggering an infinite loop?
Execute Address: 00A8E781 Lgi9v37x32nop.dll!?Parse@GToken@@QAEXPBD0_NH@Z+0x171 Call Stack: 0018E3C0 00A8E593 Lgi9v37x32nop.dll!??0GToken@@QAE@PBD0_NH@Z+0x63 0018E3F0 00654877 Scribe.exe+0x254877 0018E450 0067A955 Scribe.exe!?Match@ScribeWnd@@UAE_NPAVGDataStoreI@@PAVGDataPropI@@HAAV?$GArray@PAVGDataI@@@@@Z+0x225 0018E4C4 00594E13 Scribe.exe+0x194e13 0018E744 00A1BE6C Lgi9v37x32nop.dll!?GetValue@GDom@@UAE_NPBDAAVGVariant@@@Z+0x12c 0018E96C 004D5D0B Scribe.exe!?DoUI@Filter@@UAEPAVThingUi@@PAVMailContainer@@@Z+0x8db 0018ED98 004D60E5 Scribe.exe!?EvaluateTree@Filter@@IAE_NPAVGXmlTag@@PAVMail@@AA_NPAVGStream@@@Z+0x255 0018EDD8 004D5FFD Scribe.exe!?EvaluateTree@Filter@@IAE_NPAVGXmlTag@@PAVMail@@AA_NPAVGStream@@@Z+0x16d 0018EE1C 004D6284 Scribe.exe!?EvaluateXml@Filter@@IAE_NPAVMail@@AA_NPAVGStream@@@Z+0xe4 0018EE5C 004D63EF Scribe.exe!?GetVariant@Filter@@UAE_NPBDAAVGVariant@@PAD@Z+0x14f 0018EE90 0047FB45 Scribe.exe+0x7fb45 0018F690 0069E4AE Scribe.exe+0x29e4ae 0018F6B4 005BCC31 Scribe.exe+0x1bcc31 0018F6EC 005BA4AF Scribe.exe+0x1ba4af 0018F750 004D83BD Scribe.exe!?Test@Filter@@QAE_NPAVMail@@AA_NPAVGStream@@@Z+0x9d 0018F76C 004D86D4 Scribe.exe!?ApplyFilters@Filter@@SAHPAVGView@@AAV?$List@VFilter@@@@AAV?$List@VMail@@@@@Z+0x294 0018F920 00684A6A Scribe.exe!?OnNewMail@ScribeWnd@@QAEXPAV?$List@VMail@@@@_N@Z+0x2ca 0018FAFC 00685E88 Scribe.exe!?OnNew@ScribeWnd@@UAEXPAVGDataFolderI@@AAV?$GArray@PAVGDataI@@@@H_N@Z+0x4a8 0018FB84 00572DFE Scribe.exe+0x172dfe 0018FC00 0065DE55 Scribe.exe!?WriteThing@ThingContainer@@UAE?AW4Store3Status@@PAVThing@@@Z+0x245 0018FC6C 0063FB09 Scribe.exe!?Save@Mail@@UAE_NPAVThingContainer@@@Z+0xa9 0018FC88 006854BC Scribe.exe!?OnTransfer@ScribeWnd@@IAE_NXZ+0x51c 0018FDD0 00685F45 Scribe.exe!?OnIdle@ScribeWnd@@QAE_NXZ+0x95 0018FE08 006A146A Scribe.exe+0x2a146a 0018FE1C 009D8E0A Lgi9v37x32nop.dll!?Run@GApp@@UAE_N_NP6A_NPAX@Z1@Z+0xfa 0018FE4C 006A15D6 Scribe.exe+0x2a15d6 0018FED0 00617A10 Scribe.exe+0x217a10 0018FEF8 004CC8B1 Scribe.exe+0xcc8b1 0018FF88 74AA3677 kernel32.dll!BaseThreadInitThunk+0x12 0018FF94 771E9F42 ntdll.dll!RtlInitializeExceptionChain+0x63 0018FFD4 771E9F15 ntdll.dll!RtlInitializeExceptionChain+0x36 Execute Address: 771CFCD5 ntdll.dll!NtQueryPerformanceCounter+0x15 Call Stack: 0018E118 00A009C3 Lgi9v37x32nop.dll!LgiCurrentTime+0x53 0018E12C 00A025BF Lgi9v37x32nop.dll!?Lock@GMutex@@QAE_NPBDH@Z+0xf 0018E16C 009EB8A1 Lgi9v37x32nop.dll!?_OnAccess@GOptionsFile@@EAE_N_N@Z+0x21 0018E180 00A1BD7F Lgi9v37x32nop.dll!?GetValue@GDom@@UAE_NPBDAAVGVariant@@@Z+0x3f 0018E3A0 00678918 Scribe.exe!?GetFolder@ScribeWnd@@QAEPAVThingContainer@@HPAUGMailStore@1@@Z+0xa8 0018E44C 0067A8D5 Scribe.exe!?Match@ScribeWnd@@UAE_NPAVGDataStoreI@@PAVGDataPropI@@HAAV?$GArray@PAVGDataI@@@@@Z+0x1a5 0018E4C4 00594E13 Scribe.exe+0x194e13 0018E744 00A1BE6C Lgi9v37x32nop.dll!?GetValue@GDom@@UAE_NPBDAAVGVariant@@@Z+0x12c 0018E96C 004D5D0B Scribe.exe!?DoUI@Filter@@UAEPAVThingUi@@PAVMailContainer@@@Z+0x8db 0018ED98 004D60E5 Scribe.exe!?EvaluateTree@Filter@@IAE_NPAVGXmlTag@@PAVMail@@AA_NPAVGStream@@@Z+0x255 0018EDD8 004D5FFD Scribe.exe!?EvaluateTree@Filter@@IAE_NPAVGXmlTag@@PAVMail@@AA_NPAVGStream@@@Z+0x16d 0018EE1C 004D6284 Scribe.exe!?EvaluateXml@Filter@@IAE_NPAVMail@@AA_NPAVGStream@@@Z+0xe4 0018EE5C 004D63EF Scribe.exe!?GetVariant@Filter@@UAE_NPBDAAVGVariant@@PAD@Z+0x14f 0018EE90 0047FB45 Scribe.exe+0x7fb45 0018F690 0069E4AE Scribe.exe+0x29e4ae 0018F6B4 005BCC31 Scribe.exe+0x1bcc31 0018F6EC 005BA4AF Scribe.exe+0x1ba4af 0018F750 004D83BD Scribe.exe!?Test@Filter@@QAE_NPAVMail@@AA_NPAVGStream@@@Z+0x9d 0018F76C 004D86D4 Scribe.exe!?ApplyFilters@Filter@@SAHPAVGView@@AAV?$List@VFilter@@@@AAV?$List@VMail@@@@@Z+0x294 0018F920 00684A6A Scribe.exe!?OnNewMail@ScribeWnd@@QAEXPAV?$List@VMail@@@@_N@Z+0x2ca 0018FAFC 00685E88 Scribe.exe!?OnNew@ScribeWnd@@UAEXPAVGDataFolderI@@AAV?$GArray@PAVGDataI@@@@H_N@Z+0x4a8 0018FB84 00572DFE Scribe.exe+0x172dfe 0018FC00 0065DE55 Scribe.exe!?WriteThing@ThingContainer@@UAE?AW4Store3Status@@PAVThing@@@Z+0x245 0018FC6C 0063FB09 Scribe.exe!?Save@Mail@@UAE_NPAVThingContainer@@@Z+0xa9 0018FC88 006854BC Scribe.exe!?OnTransfer@ScribeWnd@@IAE_NXZ+0x51c 0018FDD0 00685F45 Scribe.exe!?OnIdle@ScribeWnd@@QAE_NXZ+0x95 0018FE08 006A146A Scribe.exe+0x2a146a 0018FE1C 009D8E0A Lgi9v37x32nop.dll!?Run@GApp@@UAE_N_NP6A_NPAX@Z1@Z+0xfa 0018FE4C 006A15D6 Scribe.exe+0x2a15d6 0018FED0 00617A10 Scribe.exe+0x217a10 0018FEF8 004CC8B1 Scribe.exe+0xcc8b1 0018FF88 74AA3677 kernel32.dll!BaseThreadInitThunk+0x12 0018FF94 771E9F42 ntdll.dll!RtlInitializeExceptionChain+0x63 0018FFD4 771E9F15 ntdll.dll!RtlInitializeExceptionChain+0x36 |
Scott 03/09/2014 9:06am | It seems that if I disable all filters that have scripts, the hangings cease. When I enable some filters with scripts, it hangs. |
fret 03/09/2014 9:45am | Scott, the presence of:
EvaluateTree@Filter, EvaluateXml@Filter indicates to me that Scribe wasn't evaluating a script based filter, but a standard set of conditions created with the UI. It's not in a infinite loop, as EvaluateTree is a recursive function and only appears a couple of times. Can you isolate a single filter causing the trouble? |
Scott 03/09/2014 12:45pm | The following filter hangs when called.
It may be the Strstr() call that is causing the issue. If I comment it out, it doesn't crash. if (Filter.TestConditions) { if (Strstr(Mail.From.Name, "Brenda") >= 0) { if (0<Mail.Attachments) { Mail.Colour = -16736256; } } FilterDoActions(Filter, Mail); } |
fret 03/09/2014 2:40pm | The following filter hangs when called. What excellent sleuthing! I've used that to recreate the issue here and it turns out that the error handling in the scripting engine has some problems. Firstly a lot of error conditions are reported to the scripting console but don't cause the script to fail compilation. This has the rather unfortunate side effect of the virtual machine executing the broken script. And in this case the function "StrStr" is undefined and the VM loses the plot at that point. So in response, I've updated the error handling to work correctly for a whole bunch of cases. Now the scripts causes the correct behaviour (display of a compile warning bar). I'll put up a build later today to address this for the v2.0 branch. You'll need to update your filter code to use the: var.Find(sub-string[, start[, end]])syntax. |
Scott 03/09/2014 8:47pm | After replacing Strstr(), Scribe works like a charm!!
Thanks. |
Reply | |