Hi David.

I send some days ago a mail reporting "process never is completed" in Windows, and I propose similar steps to reproduce, see:
http://forum.world.st/OSProcess-is-process-done-tp4569088p4570740.html

Two notes about this previous mail: Two notes about this previous mail: I say "the image hang", but this was when I evaluate #waitForCommand: and obviously is related to that the external process is always marked as running, not just "when I open the image with OSProcess already loaded" how I says. Another, I do OSProcess command: 'cmd.exe /c dir' en windows 7, �OSProcess command: 'dir' only work in windows xp.


Well, I run this and both result in a always running process and thread:

1)
OSProcess command: 'cmd.exe /c dir'. => always running process (although the associated underlying process is complete)

2)�
OSProcess thisOSProcess restartChildWatcherThread => always running thread.

As I says in previous mail, if I unload and load OSProcess package then all begin to work fine. Then, I suspected that was needed rerun some class side initialize code to solve the problem. And yes!!! That is OSProcessAccessor initialize.
I added that to

ThisOSProcess>>startUp: resuming
| aio |
(aio := Smalltalk at: #AioEventHandler)
ifNotNil: [ aio startUp: resuming ].
�*OSProcessAccessor initialize.*
self initializeThisOSProcess


Regards.


2012/5/2 David T. Lewis <lewis@mail.msen.com>
Sean,

Can you please try two things, in this order, and let me know which
one causes the problem to go away?

1) Save your image, exit, and restart. Then try

�(OSProcess command: 'ls') inspect

and see if it results in a process proxy with run state "complete".

2) Restart the child watcher

�OSProcess accessor restartChildWatcherProcess.
�(OSProcess command: 'ls') inspect

and see if it results in a process proxy with run state "complete".

Thanks,
Dave

On Tue, May 01, 2012 at 10:22:44PM -0700, Sean P. DeNigris wrote:
> With the latest OSProcess package from SqS, when I save the image, I get:
>
> 2 May 2012 1:20:30 am
>
> VM: Mac OS - intel - 1073 - Croquet Closure Cog VM [CoInterpreter
> VMMaker-oscog-EstebanLorenzano.155] 21.0
> Image: Pharo1.3 [Latest update: #13320]
>
> UndefinedObject(Object)>>doesNotUnderstand: #wait
> � � � Receiver: nil
> � � � Arguments and temporary variables:
> � � � � � � � aMessage: � � � wait
> � � � � � � � exception: � � �MessageNotUnderstood: receiver of "wait" is nil
> � � � � � � � resumeValue: � �nil
> � � � Receiver's instance variables:
> nil
>
> [[event wait.
> � � � processSynchronizationDelay wait.
> � � � self changed: #childProcessStatus] repeat.
> � � � nil] in UnixOSProcessAccessor>>grimReaperProcess
> � � � Receiver: a UnixOSProcessAccessor on pid 22740
> � � � Arguments and temporary variables:
> � � � � � � � event: �nil
> � � � � � � � processSynchronizationDelay: � �a Delay(20 msecs)
> � � � Receiver's instance variables:
> � � � � � � � dependents: � � a DependentsArray(a UnixProcess with pid 22740)
> � � � � � � � sessionIdentifier: � � �#[104 195 160 79]
> � � � � � � � canObtainSessionIdentifierFromPlugin: � true
> � � � � � � � hasTestEof: � � nil
> � � � � � � � grimReaper: � � a Process in
> MorphicUIManager>>openDebuggerOn:context:label:content...etc...
> � � � � � � � sigChldSemaphore: � � � nil
>
> Weird...
>
>
> --
> View this message in context: http://forum.world.st/OSProcess-error-in-1-3-tp4602389.html
> Sent from the Pharo Smalltalk mailing list archive at Nabble.com.