Not writing to stderr on magic errors, patch mostly by Mike Frysinger.
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@4629 35c25a1d-7b9e-4130-9fde-d3aeb78583b8master
parent
3aea69daae
commit
bc5c7c3b74
|
@ -1,3 +1,12 @@
|
||||||
|
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>
|
2014-02-28 Benno Schulenberg <bensberg@justemail.net>
|
||||||
* src/text.c (execute_command) - Equalize pipe error messages.
|
* src/text.c (execute_command) - Equalize pipe error messages.
|
||||||
* src/global.c (thanks_for_all_the_fish) - Remove a redundant
|
* src/global.c (thanks_for_all_the_fish) - Remove a redundant
|
||||||
|
|
13
src/color.c
13
src/color.c
|
@ -160,24 +160,23 @@ void color_update(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_LIBMAGIC
|
#ifdef HAVE_LIBMAGIC
|
||||||
|
if (stat(openfile->filename, &fileinfo) == 0) {
|
||||||
if (strcmp(openfile->filename,"") && stat(openfile->filename, &fileinfo) == 0) {
|
|
||||||
m = magic_open(MAGIC_SYMLINK |
|
m = magic_open(MAGIC_SYMLINK |
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
MAGIC_DEBUG | MAGIC_CHECK |
|
MAGIC_DEBUG | MAGIC_CHECK |
|
||||||
#endif /* DEBUG */
|
#endif
|
||||||
MAGIC_ERROR);
|
MAGIC_ERROR);
|
||||||
if (m == NULL || magic_load(m, NULL) < 0)
|
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 {
|
else {
|
||||||
magicstring = magic_file(m,openfile->filename);
|
magicstring = magic_file(m,openfile->filename);
|
||||||
if (magicstring == NULL) {
|
if (magicstring == NULL) {
|
||||||
magicerr = magic_error(m);
|
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
|
#ifdef DEBUG
|
||||||
fprintf(stderr, "magic string returned: %s\n", magicstring);
|
fprintf(stderr, "magic string returned: %s\n", magicstring);
|
||||||
#endif /* DEBUG */
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* HAVE_LIBMAGIC */
|
#endif /* HAVE_LIBMAGIC */
|
||||||
|
|
Loading…
Reference in New Issue