On Monday 25 June 2012 07:19:54 IvankoB wrote:
>
> #3  2028 unknown 0x7c90e514 in ?? ()
>    The stack:
>      #0  7C90E514 :0 ??()
>      #1  7C90CFFA :0 ??()
>      #2  7C80EF97 :0 ??()
>      #3  0050CF19 msesysintf.pas:1425 SYS_GETFILEINFO(PATH=0x9fbc0
> '/D:/GITROOT/podpiska/readcert.pas.$$$1924', INFO={NAME = 0x0, STATE = [],
> EXTINFO1 = {FILETYPE = FT_UNKNOWN, ATTRIBUTES = [], SIZE = 0,   MODTIME =
> 0, ACCESSTIME = 0, CTIME = 0}, EXTINFO2 = {ID = 0, OWNER = 0, GROUP = 0}})
>      #4  00518E0B msefileutils.pas:1034 FINDFILE(FILENAME=0x9fbc0
> '/D:/GITROOT/podpiska/readcert.pas.$$$1924')
>      #5  00516987 msefileutils.pas:283 INTERMEDIATEFILENAME(ANAME=0x93098
> '/D:/GITROOT/podpiska/readcert.pas', result=0x0)
>      #6  00528E28 msestream.pas:998
> TMSEFILESTREAM__CREATETRANSACTION(AFILENAME=0x93098
> '/D:/GITROOT/podpiska/readcert.pas', RIGHTS=[S_IRUSR..S_IWUSR,
> S_IRGRP..S_IWGRP, S_IROTH..S_IWOTH], vmt=0x7d5790, this=<error reading
> variable>)
>      #7  005E114B msestream.pas:0
> MSETEXTEDIT_TCUSTOMTEXTEDIT_$__SAVETOFILE$UNICODESTRING()
>      #8  00642C9D msestream.pas:0
> SOURCEPAGE_TSOURCEPAGE_$__SAVE$UNICODESTRING()
>      #9  006429E9 msestream.pas:0
> SOURCEPAGE_TSOURCEPAGE_$__CHECKSAVE$BOOLEAN$BOOLEAN$$MODALRESULTTY()
>      #10  00440492 msestream.pas:0
> SOURCEFORM_TSOURCEFO_$__SAVEALL$BOOLEAN$$MODALRESULTTY()
>      #11  0045F807 msestream.pas:0 MAIN_TMAINFO_$__DOMAKE$LONGINT()
>      #12  0045FDEA msestream.pas:0
> MAIN_TMAINFO_$__CHECKREMAKE$STARTCOMMANDTY$$BOOLEAN()
>      #13  0043D9CB msestream.pas:0
> ACTIONSMODULE_TACTIONSMO_$__CONTINUEACTONEXECUTE$TOBJECT()
>      #14  005375E5 mseact.pas:377 DOACTIONEXECUTE1(SENDER=0xf3488,
> INFO={ACTION = 0x7d200, CAPTIONTEXT = 0x72858 '&Continue', CAPTION1 =
> {TEXT = 0x645a4a8 'Continue', FORMAT = 0x92008, FLAGS = []}, STATE = [],
> OPTIONS = [], SHORTCUT = 0x77380, SHORTCUT1 = 0x0, GROUP = 0, IMAGENR = 4,
> IMAGENRDISABLED = 17, COLORGLYPH = 2147483649, COLOR = 2147483649,
> IMAGECHECKEDOFFSET = 0, IMAGELIST = 0xf2ee8, HINT = 0x72878 'Continue',
> TAG = 0, TAGPOINTER = 0x0, ONEXECUTE = 0x43d9b0
> <ACTIONSMODULE_TACTIONSMO_$__CONTINUEACTONEXECUTE$TOBJECT>,
> ONBEFOREEXECUTE = 0}, CHANGED=false, NOCHECKBOX=false, NOCANDEFOCUS=false,
> BEFOREEXECUTE=0)
>      #15  00561DA9 mseactions.pas:1079 DOACTIONSHORTCUT(SENDER=0xf3488,
> INFO={ACTION = 0x7d200, CAPTIONTEXT = 0x72858 '&Continue', CAPTION1 =
> {TEXT = 0x645a4a8 'Continue', FORMAT = 0x92008, FLAGS = []}, STATE = [],
> OPTIONS = [], SHORTCUT = 0x77380, SHORTCUT1 = 0x0, GROUP = 0, IMAGENR = 4,
> IMAGENRDISABLED = 17, COLORGLYPH = 2147483649, COLOR = 2147483649,
> IMAGECHECKEDOFFSET = 0, IMAGELIST = 0xf2ee8, HINT = 0x72878 'Continue',
> TAG = 0, TAGPOINTER = 0x0, ONEXECUTE = 0x43d9b0
> <ACTIONSMODULE_TACTIONSMO_$__CONTINUEACTONEXECUTE$TOBJECT>,
> ONBEFOREEXECUTE = 0}, KEYINFO={EVENTKIND = EK_KEYPRESS, KEY = KEY_F9,
> KEYNOMOD = KEY_F9, CHARS = 0x0, SHIFTSTATE = [], EVENTSTATE =
> [ES_PROCESSED], TIMESTAMP = 425515000})
> [.........]
>
#3 is interresting. Why does the thread hang in sys_getfileinfo()? IIRC CPU 
load is zero? Still the "Устройство %2 \"%3\" не отвечает." message in main 
window?
We should know where thread 1928 (file change notifier) hangs in MSEgui.
"
function tdirchangethread.execute(thread: tmsethread): integer;
{$ifdef mswindows}
var
 Obj: DWORD;
 Handles: integerarty;
 fafd: integer;
begin
 result:= 0;
 handles:= nil; //compilerwarning
 while not Terminated and not application.terminated do begin
  lock;
  handles:= copy(dirdescriptors);
  unlock;
  Obj := WaitForMultipleObjects(length(handles), @Handles[0], False,  
INFINITE);  
  if not terminated and not application.terminated then begin
   if obj <> wait_failed then begin //else closed handle
    obj:= obj - wait_object_0;
    if (obj > 0) and (integer(obj) < length(handles)) then begin
     fafd:= handles[obj];
     FindNextChangeNotification(fafd);   <<<<<<<<<-----here?
     dochange(fafd);
    end;
   end;
  end;
 end;
end;
{$else}    //unix
"
"
id=1928. Wait: Executive
ntoskrnl.exe!ExReleaseResourceLite+0x1a3
ntoskrnl.exe!PsGetContextThread+0x329
ntoskrnl.exe!FsRtlInitializeFileLock+0x83f
ntoskrnl.exe!FsRtlInitializeFileLock+0x87e
ntoskrnl.exe!PsCreateSystemThread+0x136
ntoskrnl.exe!NtNotifyChangeDirectoryFile+0x182
ntoskrnl.exe!ZwYieldExecution+0xb78
ntdll.dll!KiFastSystemCallRet
mseide.exe+0x26ff19
"
Please try for an experiment
"
    if (obj > 0) and (integer(obj) < length(handles)) then begin
     fafd:= handles[obj];
 application.lock;
     FindNextChangeNotification(fafd);
 application.unlock;
     dochange(fafd);
    end;
"
>
> PS:
> Should Me reinstall my system or we'll continue the investigations ?
>
I don't know. If there is a chance to find and fix a bug we should continue.

Martin

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
mseide-msegui-talk mailing list
mseide-msegui-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk

Reply via email to