Branch: refs/heads/master Author: Colomban Wendling ban@herbesfolles.org Committer: Colomban Wendling ban@herbesfolles.org Date: Tue, 19 Aug 2014 01:31:34 UTC Commit: 8812e39e2e937d1e7cfee1526af23e6ba3a45938 https://github.com/geany/geany/commit/8812e39e2e937d1e7cfee1526af23e6ba3a459...
Log Message: ----------- Fix searching backwards from the Find dialog
search_find_prev() wasn't properly updated to work on GeanyFindFlags leading to incorrect flags handling.
Modified Paths: -------------- src/search.c src/symbols.c
Modified: src/search.c 24 lines changed, 12 insertions(+), 12 deletions(-) =================================================================== @@ -2031,30 +2031,30 @@ static gint find_regex(ScintillaObject *sci, guint pos, GRegex *regex, GeanyMatc }
+static gint geany_find_flags_to_sci_flags(GeanyFindFlags flags) +{ + g_warn_if_fail(! (flags & GEANY_FIND_MULTILINE)); + + return ((flags & GEANY_FIND_MATCHCASE) ? SCFIND_MATCHCASE : 0) | + ((flags & GEANY_FIND_WHOLEWORD) ? SCFIND_WHOLEWORD : 0) | + ((flags & GEANY_FIND_REGEXP) ? SCFIND_REGEXP | SCFIND_POSIX : 0) | + ((flags & GEANY_FIND_WORDSTART) ? SCFIND_WORDSTART : 0); +} + + gint search_find_prev(ScintillaObject *sci, const gchar *str, gint flags, GeanyMatchInfo **match_) { gint ret;
g_return_val_if_fail(! (flags & GEANY_FIND_REGEXP), -1);
- ret = sci_search_prev(sci, flags, str); + ret = sci_search_prev(sci, geany_find_flags_to_sci_flags(flags), str); if (ret != -1 && match_) *match_ = match_info_new(flags, ret, ret + strlen(str)); return ret; }
-static gint geany_find_flags_to_sci_flags(gint flags) -{ - g_warn_if_fail(! (flags & GEANY_FIND_MULTILINE)); - - return ((flags & GEANY_FIND_MATCHCASE) ? SCFIND_MATCHCASE : 0) | - ((flags & GEANY_FIND_WHOLEWORD) ? SCFIND_WHOLEWORD : 0) | - ((flags & GEANY_FIND_REGEXP) ? SCFIND_REGEXP | SCFIND_POSIX : 0) | - ((flags & GEANY_FIND_WORDSTART) ? SCFIND_WORDSTART : 0); -} - - gint search_find_next(ScintillaObject *sci, const gchar *str, gint flags, GeanyMatchInfo **match_) { GeanyMatchInfo *match;
Modified: src/symbols.c 2 lines changed, 1 insertions(+), 1 deletions(-) =================================================================== @@ -2332,7 +2332,7 @@ static void on_find_usage(GtkWidget *widget, G_GNUC_UNUSED gpointer unused) if (widget == symbol_menu.find_in_files) search_show_find_in_files_dialog_full(tag->name, NULL); else - search_find_usage(tag->name, tag->name, SCFIND_WHOLEWORD | SCFIND_MATCHCASE, + search_find_usage(tag->name, tag->name, GEANY_FIND_WHOLEWORD | GEANY_FIND_MATCHCASE, widget == symbol_menu.find_usage);
tm_tag_unref(tag);
-------------- This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).