The networking API (privatives whose name begins with "NET") show dialog boxes when given bad input or when run when in an incorrect state.
This is inconsistent with how the rest of the procedures behave, so it should be corrected.
I have reproduced this in FMSLogo 7.7.0, but the behavior has existed since at least MSWLogo 6.5b.
How Reproducible:
Every Time
Steps to Reproduce:
NETSTARTUP
NETSTARTUP
What Happens:
After the second NETSTARTUP you see a dialog box that says "Already started", then the commander prints "Stopping...", which indicates that a stop error was thrown.
Expected Result:
FMSLogo does not display a message box. Instead it throws an error that indicates the problem.
For any error that happens asynchronously (as a result of receiving network data, instead of when running a bad instruction), this should print an error to the console.
This is fixed by [r5435], [r5436], [r5439], and [r5440]. The fix will be available in FMSLogo 8.0.0.
I also removed the errors when calling
NETCONNECTOFFandNETACCEPTOFFand instead made it them a no-op to call ifNETCONNECTONorNETACCEPTONhadn't been called. This removed two strings that would have had to have been translated and makes it easier for the programmer to cleanup.For the most part, I was able to re-use the existing error message translations, but I had to concatenate some of them with colons.
Related
Commit: [r5435]
Commit: [r5436]
Commit: [r5439]
Commit: [r5440]