# HG changeset patch # User Joe Branton # Date 1280369023 -36000 # Node ID 6bb86f60191e08caceb75912f8cb5b33da3991b5 # Parent 4ab8c027df23525403302f4eaa80b854ea2cf431# Parent ba0a96c1cc517e537c47e342fa03d73a2250b197 Catchup. diff -r ba0a96c1cc51 -r 6bb86f60191e core/builtins/ymodem.cif --- a/core/builtins/ymodem.cif Tue Jul 13 09:10:33 2010 +0100 +++ b/core/builtins/ymodem.cif Thu Jul 29 12:03:43 2010 +1000 @@ -22,19 +22,9 @@ Allows the transfer of files to and from remote terminal software that supports YMODEM. Supports batch mode, allowing multiple files to be sent and received. Note, the console implementation that ymodem is attached to must support binary mode. If it doesn't, C (-47) will be reported. In practice, this currently means that one of the vt100 console variants (F, F, F, F or F) must be used. -==argument filename file_name optional multiple - -=over 4 - -=item Send mode: +Note, when sending, file names specified with wild characters are accepted. When receiving, specify a directory into which one or more files should be received. If no directory is specified, the received files will be saved in the current working directory (the name of each received file is provided by the sending end). -The names of the files to be sent (wild characters are accepted). At least one file must be specified. - -=item Receive mode: - -The name of the directory in which to write the received files (the name of each received file is provided by the send). If not specified, the received files are saved in the current working directory - -=back +==argument filename file_name optional multiple ==see-also diff -r ba0a96c1cc51 -r 6bb86f60191e documentation/change_history.pod --- a/documentation/change_history.pod Tue Jul 13 09:10:33 2010 +0100 +++ b/documentation/change_history.pod Thu Jul 29 12:03:43 2010 +1000 @@ -14,6 +14,10 @@ =head1 FShell Change History +=head2 Release 000.4 + +Fixed a defect in iosrv.exe that caused a panic if a foreground read object was attached to a different end point. This was due to the read object being notified of a change in foreground before its iEndPoint member was updated. This member is now updated before attempting the attach, and is set to NULL in the event of a leave (resulting in the read object being left in an unattached state). + =head2 Release 000.3 Build fixes. diff -r ba0a96c1cc51 -r 6bb86f60191e libraries/iosrv/server/readwrite.cpp --- a/libraries/iosrv/server/readwrite.cpp Tue Jul 13 09:10:33 2010 +0100 +++ b/libraries/iosrv/server/readwrite.cpp Thu Jul 29 12:03:43 2010 +1000 @@ -362,8 +362,13 @@ ReadEndPoint()->IorepDetach(*this); } - aEndPoint.IorepAttachL(*this, aMode); iEndPoint = &aEndPoint; + TRAPD(err, aEndPoint.IorepAttachL(*this, aMode)); + if (err) + { + iEndPoint = NULL; + User::Leave(err); + } } void CIoReadObject::SetReadMode(RIoReadHandle::TReadMode aMode) @@ -954,8 +959,13 @@ WriteEndPoint()->IowepDetach(*this); } - aEndPoint.IowepAttachL(*this); iEndPoint = &aEndPoint; + TRAPD(err, aEndPoint.IowepAttachL(*this)); + if (err) + { + iEndPoint = NULL; + User::Leave(err); + } } void CIoWriteObject::WriteL(const RMsg& aMessage)