Stopping M-\ and M-/ in the WhereisFile menu from doing also an
unrequested search after having performed their function. Fixes Savannah bug #44790. git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@5190 35c25a1d-7b9e-4130-9fde-d3aeb78583b8master
parent
08a52c1dab
commit
99d2358510
|
@ -1,3 +1,8 @@
|
||||||
|
2015-04-12 Benno Schulenberg <bensberg@justemail.net>
|
||||||
|
* src/browser.c (filesearch_init): Stop M-\ and M-/ in WhereisFile
|
||||||
|
menu (reached via ^R ^T ^W) from doing also an unrequested search
|
||||||
|
after having performed their function. Fixes Savannah bug #44790.
|
||||||
|
|
||||||
2015-04-11 Benno Schulenberg <bensberg@justemail.net>
|
2015-04-11 Benno Schulenberg <bensberg@justemail.net>
|
||||||
* src/search.c (do_replace_loop): Do not split off the marked region
|
* src/search.c (do_replace_loop): Do not split off the marked region
|
||||||
into a separate partition, but do the replacings in the current one,
|
into a separate partition, but do the replacings in the current one,
|
||||||
|
|
|
@ -703,7 +703,7 @@ void browser_select_dirname(const char *needle)
|
||||||
* program. */
|
* program. */
|
||||||
int filesearch_init(void)
|
int filesearch_init(void)
|
||||||
{
|
{
|
||||||
int i = 0;
|
int input;
|
||||||
char *buf;
|
char *buf;
|
||||||
static char *backupstring = NULL;
|
static char *backupstring = NULL;
|
||||||
/* The search string we'll be using. */
|
/* The search string we'll be using. */
|
||||||
|
@ -727,7 +727,7 @@ int filesearch_init(void)
|
||||||
buf = mallocstrcpy(NULL, "");
|
buf = mallocstrcpy(NULL, "");
|
||||||
|
|
||||||
/* This is now one simple call. It just does a lot. */
|
/* This is now one simple call. It just does a lot. */
|
||||||
i = do_prompt(FALSE,
|
input = do_prompt(FALSE,
|
||||||
#ifndef DISABLE_TABCOMP
|
#ifndef DISABLE_TABCOMP
|
||||||
TRUE,
|
TRUE,
|
||||||
#endif
|
#endif
|
||||||
|
@ -743,14 +743,16 @@ int filesearch_init(void)
|
||||||
free(backupstring);
|
free(backupstring);
|
||||||
backupstring = NULL;
|
backupstring = NULL;
|
||||||
|
|
||||||
/* Cancel any search, or just return with no previous search. */
|
/* If only Enter was pressed but we have a previous string, it's okay. */
|
||||||
if (i == -1 || (i < 0 && *last_search == '\0') || (i == 0 &&
|
if (input == -2 && *last_search != '\0')
|
||||||
*answer == '\0')) {
|
|
||||||
statusbar(_("Cancelled"));
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
/* Otherwise negative inputs are a bailout. */
|
||||||
|
if (input < 0)
|
||||||
|
statusbar(_("Cancelled"));
|
||||||
|
|
||||||
|
/* Zero is good; positive values mean some function was run. */
|
||||||
|
return input;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Look for the given needle in the list of files. */
|
/* Look for the given needle in the list of files. */
|
||||||
|
@ -817,7 +819,7 @@ void do_filesearch(void)
|
||||||
UNSET(BACKWARDS_SEARCH);
|
UNSET(BACKWARDS_SEARCH);
|
||||||
|
|
||||||
if (filesearch_init() != 0) {
|
if (filesearch_init() != 0) {
|
||||||
/* Cancelled or a blank search string. */
|
/* Cancelled, or a blank search string, or done something. */
|
||||||
bottombars(MBROWSER);
|
bottombars(MBROWSER);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue