Rework search_close_pid() and let it handle the case when the grep command was killed externally.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@3253 ea778897-0a13-0410-b9d1-a72fbfd435f5
This commit is contained in:
parent
6e727352f1
commit
800780e2b7
@ -1,3 +1,10 @@
|
|||||||
|
2008-11-19 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
|
||||||
|
|
||||||
|
* src/search.c:
|
||||||
|
Rework search_close_pid() and let it handle the case when the grep
|
||||||
|
command was killed externally.
|
||||||
|
|
||||||
|
|
||||||
2008-11-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
|
2008-11-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
|
||||||
|
|
||||||
* src/notebook.c:
|
* src/notebook.c:
|
||||||
|
25
src/search.c
25
src/search.c
@ -1428,24 +1428,30 @@ static void search_close_pid(GPid child_pid, gint status, gpointer user_data)
|
|||||||
#ifdef G_OS_UNIX
|
#ifdef G_OS_UNIX
|
||||||
const gchar *msg = _("Search failed (see Help->Debug Messages for details).");
|
const gchar *msg = _("Search failed (see Help->Debug Messages for details).");
|
||||||
gint color = COLOR_DARK_RED;
|
gint color = COLOR_DARK_RED;
|
||||||
|
gint exit_status = 1;
|
||||||
|
|
||||||
if (WIFEXITED(status))
|
if (WIFEXITED(status))
|
||||||
{
|
{
|
||||||
switch (WEXITSTATUS(status))
|
exit_status = WEXITSTATUS(status);
|
||||||
|
}
|
||||||
|
else if (WIFSIGNALED(status))
|
||||||
|
{
|
||||||
|
exit_status = -1;
|
||||||
|
g_warning("Find in Files: The command failed unexpectedly (signal received).");
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (exit_status)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
{
|
{
|
||||||
gint count = gtk_tree_model_iter_n_children(
|
gint count = gtk_tree_model_iter_n_children(
|
||||||
GTK_TREE_MODEL(msgwindow.store_msg), NULL) - 1;
|
GTK_TREE_MODEL(msgwindow.store_msg), NULL) - 1;
|
||||||
|
gchar *text = ngettext(
|
||||||
|
"Search completed with %d match.",
|
||||||
|
"Search completed with %d matches.", count);
|
||||||
|
|
||||||
msgwin_msg_add_fmt(COLOR_BLUE, -1, NULL,
|
msgwin_msg_add_fmt(COLOR_BLUE, -1, NULL, text, count);
|
||||||
ngettext("Search completed with %d match.",
|
ui_set_statusbar(FALSE, text, count);
|
||||||
"Search completed with %d matches.", count),
|
|
||||||
count);
|
|
||||||
ui_set_statusbar(FALSE,
|
|
||||||
ngettext("Search completed with %d match.",
|
|
||||||
"Search completed with %d matches.", count),
|
|
||||||
count);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 1:
|
case 1:
|
||||||
@ -1456,7 +1462,6 @@ static void search_close_pid(GPid child_pid, gint status, gpointer user_data)
|
|||||||
ui_set_statusbar(FALSE, "%s", msg);
|
ui_set_statusbar(FALSE, "%s", msg);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
utils_beep();
|
utils_beep();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user