+2014-03-01 Mike Frysinger <vapier@gentoo.org>
+ * src/color.c (color_update) - Do not write to stderr on magic
+ errors. If the magic db has errors such that magic_load() fails,
+ the current code dumps to stderr which messes up the terminal.
+ The error message is also vague to the point where it's confusing
+ -- I thought nano had problems writing to the file I was editing.
+ Instead, use statusbar() and clarify the messages.
+ (Patch tweaked by Benno.)
+
2014-02-28 Benno Schulenberg <bensberg@justemail.net>
* src/text.c (execute_command) - Equalize pipe error messages.
* src/global.c (thanks_for_all_the_fish) - Remove a redundant
}
#ifdef HAVE_LIBMAGIC
-
- if (strcmp(openfile->filename,"") && stat(openfile->filename, &fileinfo) == 0) {
+ if (stat(openfile->filename, &fileinfo) == 0) {
m = magic_open(MAGIC_SYMLINK |
#ifdef DEBUG
MAGIC_DEBUG | MAGIC_CHECK |
-#endif /* DEBUG */
+#endif
MAGIC_ERROR);
if (m == NULL || magic_load(m, NULL) < 0)
- fprintf(stderr, "something went wrong: %s [%s]\n", strerror(errno), openfile->filename);
+ statusbar(_("magic_load() failed: %s"), strerror(errno));
else {
magicstring = magic_file(m,openfile->filename);
if (magicstring == NULL) {
magicerr = magic_error(m);
- fprintf(stderr, "something went wrong: %s [%s]\n", magicerr, openfile->filename);
+ statusbar(_("magic_file(%s) failed: %s"), openfile->filename, magicerr);
}
#ifdef DEBUG
- fprintf(stderr, "magic string returned: %s\n", magicstring);
-#endif /* DEBUG */
+ fprintf(stderr, "magic string returned: %s\n", magicstring);
+#endif
}
}
#endif /* HAVE_LIBMAGIC */