[geany/geany] d6d836: Don't match regexes on empty strings
Enrico Tröger
git-noreply at xxxxx
Thu Sep 11 17:16:24 UTC 2014
Branch: refs/heads/master
Author: Enrico Tröger <enrico.troeger at uvena.de>
Committer: Enrico Tröger <enrico.troeger at uvena.de>
Date: Thu, 11 Sep 2014 17:16:24 UTC
Commit: d6d836c59fc522fcbb96fab7917311c2c6613ea7
https://github.com/geany/geany/commit/d6d836c59fc522fcbb96fab7917311c2c6613ea7
Log Message:
-----------
Don't match regexes on empty strings
Save As on an empty document would cause warnings like:
sys:1: Warning: g_regex_match_full: assertion 'string != NULL' failed
because SCI_GETRANGEPOINTER returns NULL then.
On a Ubuntu 12.04 system this warning even crashed Geany at writing the
log message.
So, simply don't search for anything if the document is empty.
Modified Paths:
--------------
src/search.c
Modified: src/search.c
7 lines changed, 6 insertions(+), 1 deletions(-)
===================================================================
@@ -1968,10 +1968,15 @@ static gint find_regex(ScintillaObject *sci, guint pos, GRegex *regex, GeanyMatc
{
const gchar *text;
GMatchInfo *minfo;
+ guint document_length;
gint ret = -1;
gint offset = 0;
- g_return_val_if_fail(pos <= (guint)sci_get_length(sci), -1);
+ document_length = (guint)sci_get_length(sci);
+ if (document_length <= 0)
+ return -1; /* skip empty documents */
+
+ g_return_val_if_fail(pos <= document_length, -1);
if (g_regex_get_compile_flags(regex) & G_REGEX_MULTILINE)
{
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
More information about the Commits
mailing list