dobeep_msgs isn't printf-like: it just prints the two arguments
separated by a space in the minibuffer. When it was introduced some
call from ewprintf were incorrectly translated and the "%s" remained.
For example, "M-g M-g abc RET" shows "Line number %s invalid".
ok?
diff bd057c8434699e3a647a884343d442828df4678e /usr/src
blob - 251e7e8185b0b897d28f26fa3bf11d4f8eb281f5
file + usr.bin/mg/basic.c
--- usr.bin/mg/basic.c
+++ usr.bin/mg/basic.c
@@ -536,7 +536,7 @@ gotoline(int f, int n)
return (ABORT);
n = (int)strtonum(buf, INT_MIN, INT_MAX, &err);
if (err)
- return(dobeep_msgs("Line number %s", err));
+ return(dobeep_msgs("Line number", err));
}
return(setlineno(n));
}
blob - 9ad06e49bc715c81e70573ed000e6f5c321d97a0
file + usr.bin/mg/cscope.c
--- usr.bin/mg/cscope.c
+++ usr.bin/mg/cscope.c
@@ -185,9 +185,9 @@ cscreatelist(int f, int n)
return (FALSE);
if (stat(dir, &sb) == -1)
- return(dobeep_msgs("stat: %s", strerror(errno)));
+ return(dobeep_msgs("stat:", strerror(errno)));
else if (S_ISDIR(sb.st_mode) == 0)
- return(dobeep_msgs("%s: Not a directory", dir));
+ return(dobeep_msgs(dir, "Not a directory"));
if (csexists("cscope-indexer") == FALSE)
return(dobeep_msg("no such file or directory, cscope-indexer"));