Wouldn't it be better to return -1 instead of false? and 1 on success anyway, otherwise the returnval would be void
as is said, i once was told that inside a function, with each branching return, you should increment the error code, f.e. -1, -2 etc. and 1 (==true) on success. this way it is ensured you can call the function inside an if-else statement. however, i get the feeling that if we returned nothing on success, the return value would be of type void and thus get interpreted as "false". correct me if i'm wrong.
just wanted to point this out for future readers