summaryrefslogtreecommitdiff
path: root/src/glib-utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/glib-utils.c')
-rw-r--r--src/glib-utils.c53
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;