Discussion:
[squeak-dev] Named serial port bug and how to contribute
Ricardo Moran
2018-11-30 01:25:23 UTC
Permalink
Hi,

I think I found a bug with the named serial ports in windows.
I can open a named port without problem the first time but if I close it
and try to open it again it fails until I restart the image. This doesn't
happen with numeric ports. I could reproduce this bug in both Squeak5.2 and
Pharo6.1 (both using windows 8.1).

I think the problem is that SerialPort>>#primClosePortByName: calls the
"primitiveSerialPortCloseByName" but I couldn't find this primitive
anywhere in the SerialPlugin source (
https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/src/plugins/SerialPlugin/SerialPlugin.c).
So I'm guessing that the port is never properly closed.

I added the missing primitive (find attached) and recompiled the vm, and
now it seems to work. So my question is: how can I contribute this small
fix? Should I commit to the VM Maker Inbox repository?

Thanks,
Richo
Levente Uzonyi
2018-12-02 13:41:33 UTC
Permalink
Hi Richo,

Yes, the VMMaker Inbox is the right place for your fix.

Levente
Post by Ricardo Moran
Hi,
I think I found a bug with the named serial ports in windows.
I can open a named port without problem the first time but if I close it and try to open it again it fails until I restart the image. This doesn't happen with numeric ports. I could reproduce this bug in both Squeak5.2 and Pharo6.1 (both using windows 8.1). 
I think the problem is that SerialPort>>#primClosePortByName: calls the "primitiveSerialPortCloseByName" but I couldn't find this primitive anywhere in the SerialPlugin source (https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/src/plugins/SerialPlugin/SerialPlugin.c).
So I'm guessing that the port is never properly closed. 
I added the missing primitive (find attached) and recompiled the vm, and now it seems to work. So my question is: how can I contribute this small fix? Should I commit to the VM Maker Inbox repository? 
Thanks,
Richo
Ricardo Moran
2018-12-02 16:35:33 UTC
Permalink
Great! Thank you, Levente!

Richo
Post by Levente Uzonyi
Hi Richo,
Yes, the VMMaker Inbox is the right place for your fix.
Levente
Post by Ricardo Moran
Hi,
I think I found a bug with the named serial ports in windows.
I can open a named port without problem the first time but if I close it
and try to open it again it fails until I restart the image. This doesn't
happen with numeric ports. I could reproduce this bug in both Squeak5.2 and
Pharo6.1 (both using windows 8.1).
Post by Ricardo Moran
I think the problem is that SerialPort>>#primClosePortByName: calls the
"primitiveSerialPortCloseByName" but I couldn't find this primitive
anywhere in the SerialPlugin source (
https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/src/plugins/SerialPlugin/SerialPlugin.c
).
Post by Ricardo Moran
So I'm guessing that the port is never properly closed.
I added the missing primitive (find attached) and recompiled the vm, and
now it seems to work. So my question is: how can I contribute this small
fix? Should I commit to the VM Maker Inbox repository?
Post by Ricardo Moran
Thanks,
Richo
Eliot Miranda
2018-12-02 18:15:14 UTC
Permalink
Hi Richo,

Integrated and a new plugin has been generated. Thanks!!

_,,,^..^,,,_ (phone)
Post by Ricardo Moran
Hi,
I think I found a bug with the named serial ports in windows.
I can open a named port without problem the first time but if I close it and try to open it again it fails until I restart the image. This doesn't happen with numeric ports. I could reproduce this bug in both Squeak5.2 and Pharo6.1 (both using windows 8.1).
I think the problem is that SerialPort>>#primClosePortByName: calls the "primitiveSerialPortCloseByName" but I couldn't find this primitive anywhere in the SerialPlugin source (https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/src/plugins/SerialPlugin/SerialPlugin.c). So I'm guessing that the port is never properly closed.
I added the missing primitive (find attached) and recompiled the vm, and now it seems to work. So my question is: how can I contribute this small fix? Should I commit to the VM Maker Inbox repository?
Thanks,
Richo
<SerialPlugin-primitiveSerialPortCloseByName.st>
Loading...