1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- %
- % NMODE-20.SL - DEC-20 NMODE Stuff (intended for DEC-20 Version Only)
- %
- % Author: Jeffrey Soreff
- % Hewlett-Packard/CRC
- % Date: 24 January 1983
- % Revised: 25 January 1983
- %
- % 25-Jan-83 Alan Snyder
- % Add version of actualize-file-name that ensures that transiently-created
- % file has delete access.
- %
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- (de current-date-time () % Stolen directly from Nancy Kendzierski
- % Date/time in appropriate format for the network mail header
- (let ((date-time (MkString 80)))
- (jsys1 date-time -1 #.(bits 5 7 10 12 13) 0 (const jsODTIM))
- (recopystringtonull date-time)))
- (de actualize-file-name (file-name)
- % If the specified file exists, return its "true" (and complete) name.
- % Otherwise, return the "true" name of the file that would be created if one
- % were to do so. (Unfortunately, we have no way to do this except by actually
- % creating the file and then deleting it!) Return NIL if the file cannot be
- % read or created.
- (let ((s (attempt-to-open-input file-name)))
- (cond ((not s)
- (setf s (attempt-to-open-output
- (string-concat file-name ";P777777") % so we can delete it!
- ))
- (when s
- (setf file-name (=> s file-name))
- (=> s close)
- (file-delete-and-expunge file-name)
- file-name
- )
- )
- (t
- (setf file-name (=> s file-name))
- (=> s close)
- file-name
- ))))
|