Dave Page <[EMAIL PROTECTED]> writes: > [ get rid of wsprintf in favor of snprintf ]
+1 for not depending on nonstandard subroutines without need. But please note the standard locution is snprintf(buf, sizeof(buf), ... Not sizeof() - 1. > ! char *tmppath=0; Please use NULL not 0 ... actually, since the variable is unconditionally assigned to just below, I'd say this should just be "char *tmppath;". I don't like useless initializations: if the compiler is not smart enough to discard them then they waste cycles, and they also increase the risk of bugs-of-omission in future changes. If someone were to change things around so that tmppath didn't get assigned to in one code path, then the compiler would complain about use of an uninitialized variable --- *unless* you've written a useless initialization such as the above, in which case the mistake might pass unnoticed for awhile. So don't initialize a local variable unless you're giving it an actually meaningful value. > ! /* > ! * Note: We use getenv here because the more modern > SHGetSpecialFolderPath() > ! * will force us to link with shell32.lib which eats valuable desktop > heap. > ! */ > ! tmppath = getenv("APPDATA"); Hmm, is there any functional downside to this? I suppose SHGetSpecialFolderPath does some things that getenv does not... Otherwise it looks good... regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 1: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly