[ros-bugs] [Bug 4934] rapps can't install any app (hangs)

ReactOS.Bugzilla at reactos.org ReactOS.Bugzilla at reactos.org
Thu Nov 26 14:15:57 CET 2009


http://www.reactos.org/bugzilla/show_bug.cgi?id=4934





--- Comment #40 from LoveN <love.nystrom at gmail.com>  2009-11-26 14:15:56 CET ---
In response to #39, and the backtraces in 4429.

Perhaps I'm stating the obvious but anyway..

It seems to me that in thread 0x268, WSPConnect is waiting infinitely
for IOCTL_AFD_CONNECT to complete, which apparently it doesn't.
This could of course have many reasons, one being simply a
misconfigured network connection, and another being a flaw in
the protocol implementation that's invoked.
The latter is beyond me (I can't even find it), but it may be 
a hint to whoever wrote the protocol implementation(s) of where 
to look for a problem.

I general I think nothing should wait infinitely, especially for
something as fickle as an internet connection. Better to timeout
every now and then, so one may return a failure on occasion.
But perhaps I'm not seeing the whole picture..

Thread 0x264 (rapps ThreadFunc) don't seem to do much more than
delegate the download job at hand by some COM/OLE pointer spagetti:
URLDownloadToFileW-->
  IMoniker_BindToStorage>>>URLMoniker_BindToStorage-->
    bind_to_storage-->
      start_binding-->
        IInternetProtocol_Start(binding->protocol...,
        which digs deeper into the spagetti and
        seem to end up in (work)thread 0x268 above.

start_binding then waits, while dispatching messages,
for (i.e 0x268) to set a flag or state, which never happens.
The connection neither completes nor returns a failure.

It might be prudent if MsgWaitForMultipleObjects
included QS_SENDMESSAGE and maybe even QS_TIMER here,
although I'm pretty sure that has nothing to do with 
the problem.

Sorry I can't bring a real solution, but maybe
these remarks can be a hint to find it.

Best Regards // L


-- 
Configure bugmail: http://www.reactos.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.



More information about the Ros-bugs mailing list