Guide on Errors and Messages

Hello World!

To be blunt, I’m rather a newbie with Haiku, (and with computers in general compared to the abilities of many of you guys!), and often have errors when I run programs or move files, although this is when using Alpha 1. Basically, I thought that the community in general would proabably benefit if someone were able to put this subject at the top of the list with regards to completing the user guide. Nothing much, just a quick summary of what common messages mean and how they can be solved. For example, unfortunately, messages like: “Cannot open with Tracker: Invalid Argument” are nice and descriptive, but I personally do not have the knowledge to understand what this means.

“Cannot open with Tracker: Invalid Argument”

is a very vague message, roughly equivalent to a red light with “error” written on it. It’s by no means a failure on your part that you couldn’t understand it.

Most likely the “invalid argument” is from strerror() a C library call that translates error codes from the operating system into human readable text. The error code that translates to “invalid argument” is EINVAL

To give you some idea of how vague EINVAL is here are just a few things that can cause it:

• Trying to duplicate a nonsense file descriptor.

• Performing a device-specific IO function on the wrong kind of device

• Passing the wrong flags to the memory map functions

But it’s not your job (as the user) to try to guess which of thousands of causes might be related, that’s something the programmer of the application is supposed to do. What you’re seeing is a symptom of lousy programming.

An earlier version of this comment erroneously said perror instead of strerror, they use the same error list in most systems