diff options
Diffstat (limited to 'src/glib-utils.c')
-rw-r--r-- | src/glib-utils.c | 53 |
1 files changed, 10 insertions, 43 deletions
diff --git a/src/glib-utils.c b/src/glib-utils.c index f17ddb2..08dcb5c 100644 --- a/src/glib-utils.c +++ b/src/glib-utils.c @@ -29,13 +29,10 @@ #include <glib-object.h> #include "glib-utils.h" - #define MAX_PATTERNS 128 - /* gobject utils*/ - void _g_object_unref (gpointer object) { @@ -43,7 +40,6 @@ _g_object_unref (gpointer object) g_object_unref (object); } - /* string utils */ gboolean @@ -57,7 +53,6 @@ strchrs (const char *str, return FALSE; } - char * str_substitute (const char *str, const char *from_str, @@ -90,21 +85,6 @@ str_substitute (const char *str, return g_string_free (gstr, FALSE); } - -int -strcmp_null_tolerant (const char *s1, const char *s2) -{ - if ((s1 == NULL) && (s2 == NULL)) - return 0; - else if ((s1 != NULL) && (s2 == NULL)) - return 1; - else if ((s1 == NULL) && (s2 != NULL)) - return -1; - else - return strcmp (s1, s2); -} - - /* counts how many characters to escape in @str. */ static int count_chars_to_escape (const char *str, @@ -125,8 +105,7 @@ count_chars_to_escape (const char *str, return n; } - -char* +static char* escape_str_common (const char *str, const char *meta_chars, const char prefix, @@ -166,7 +145,6 @@ escape_str_common (const char *str, return escaped; } - /* escape with backslash the string @str. */ char* escape_str (const char *str, @@ -175,7 +153,6 @@ escape_str (const char *str, return escape_str_common (str, meta_chars, '\\', 0); } - static const char * g_utf8_strstr (const char *haystack, const char *needle) { @@ -195,7 +172,6 @@ g_utf8_strstr (const char *haystack, const char *needle) return NULL; } - static char** g_utf8_strsplit (const char *string, const char *delimiter, @@ -249,7 +225,6 @@ g_utf8_strsplit (const char *string, return str_array; } - static char* g_utf8_strchug (char *string) { @@ -265,12 +240,11 @@ g_utf8_strchug (char *string) c = g_utf8_get_char (scan); } - g_memmove (string, scan, strlen (scan) + 1); + memmove (string, scan, strlen (scan) + 1); return string; } - static char* g_utf8_strchomp (char *string) { @@ -298,10 +272,8 @@ g_utf8_strchomp (char *string) return string; } - #define g_utf8_strstrip(string) g_utf8_strchomp (g_utf8_strchug (string)) - gboolean match_regexps (GRegex **regexps, const char *string, @@ -326,7 +298,6 @@ match_regexps (GRegex **regexps, return matched; } - void free_regexps (GRegex **regexps) { @@ -340,7 +311,6 @@ free_regexps (GRegex **regexps) g_free (regexps); } - char ** search_util_get_patterns (const char *pattern_string) { @@ -365,7 +335,6 @@ search_util_get_patterns (const char *pattern_string) return patterns; } - GRegex ** search_util_get_regexps (const char *pattern_string, GRegexCompileFlags compile_options) @@ -389,18 +358,16 @@ search_util_get_regexps (const char *pattern_string, return regexps; } - const char * eat_spaces (const char *line) { if (line == NULL) return NULL; - while ((*line == ' ') && (*line != 0)) + while (*line == ' ') line++; return line; } - char ** split_line (const char *line, int n_fields) @@ -423,12 +390,15 @@ split_line (const char *line, fields[i] = g_strndup (scan, field_end - scan); scan = eat_spaces (field_end); } + else if (scan != NULL && i == n_fields - 1) + { + fields[i] = g_strdup (scan); + } } return fields; } - const char * get_last_field (const char *line, int last_field) @@ -451,7 +421,6 @@ get_last_field (const char *line, return field; } - void debug (const char *file, int line, @@ -475,10 +444,8 @@ debug (const char *file, #endif } - GHashTable *static_strings = NULL; - const char * get_static_string (const char *s) { @@ -500,7 +467,6 @@ get_static_string (const char *s) return result; } - char* g_uri_display_basename (const char *uri) { @@ -513,7 +479,6 @@ g_uri_display_basename (const char *uri) return name; } - const gchar * _g_path_get_file_name (const gchar *file_name) { @@ -538,7 +503,6 @@ _g_path_get_file_name (const gchar *file_name) return base + 1; } - const char * _g_path_get_base_name (const char *path, const char *base_dir, @@ -550,6 +514,9 @@ _g_path_get_base_name (const char *path, if (junk_paths) return _g_path_get_file_name (path); + if (base_dir == NULL) + return (path[0] == '/') ? path + 1 : path; + base_dir_len = strlen (base_dir); if (strlen (path) < base_dir_len) return NULL; |