[comp.sys.amiga] Too many devices? Was: Proposal for device hackers: REXX:

iphwk%MTSUNIX1.BITNET@cunyvm.cuny.edu (Bill Kinnersley) (12/14/88)

[In "Re: Too many devices?", Gary Samad said:]
:
: ---Another pet peeve---
: We've been getting a number of calls recently with people complaining
: about our software giving them a message on startup about a missing
: library.  It turns out that a number of manufacturers are releasing
: software which includes the workbench, but are taking libraries (like
: mathieeedoubbas.library) out of libs: to save space.  When the novice
: user then tries to run software which asks for this library, the user says
: "Wadda ya mean?  I booted with a Workbench disk!"
:
Point to remember: a missing library can do worse to your public image
than just print a funny error message.
If your program uses transcendentals it will need mathtrans.library.
The C run-time support opens this for you automatically.
Oh that's good!  No, that's bad.
If the library is missing, your program gets aborted.
All the windows, screens, memory, etc you've allocated will be left hanging,
and the user will NOT be favorably impressed with what you just did to
the state of his machine.
Solution: if you're going to use transcendentals, do a sqrt(2.) first,
BEFORE you allocate any other resources, just in case.


--
--Bill Kinnersley
  Physics Department   Montana State University    Bozeman, MT 59717
  INTERNET: iphwk@terra.oscs.montana.edu      BITNET: IPHWK@MTSUNIX1

cks@ziebmef.uucp (Chris Siebenmann) (12/23/88)

In article <5954@louie.udel.EDU> iphwk%MTSUNIX1.BITNET@cunyvm.cuny.edu (Bill Kinnersley) writes:
...
>Solution: if you're going to use transcendentals, do a sqrt(2.) first,
>BEFORE you allocate any other resources, just in case.

 Or better yet, do an OpenLibrary() on the needed library when you
start up, before you do any math operations. This gives you a chance
to put up a requester with a nice error message, instead of just dying
with a message from the runtime library (which may get dumped to the
perhaps-nonexistant standard output). It may also save the user a disk
swap later on if your program needs the library only occasionally. 

-- 
	"You're a prisoner of the dark sky/The propeller blades are still
	 And the evil eye of the hurricane's/Coming in for the kill"
Chris Siebenmann		uunet!utgpu!{ontmoh!moore,ncrcan}!ziebmef!cks
cks@ziebmef.UUCP	     or	.....!utgpu!{,ontmoh!,ncrcan!brambo!}cks