error_print(int type, int line, const char *error)
{
const char *w = NULL;
+ const char *fname = NULL;
switch(type) {
case GOB_WARN:
w = "Warning:";
+ if (exit_on_warn)
+ got_error = TRUE;
break;
case GOB_ERROR:
w = "Error:";
default:
g_assert_not_reached();
}
- if(line > 0)
- fprintf(stderr, "%s:%d: %s %s\n", filename, line, w, error);
+ fname = filename;
+ if (fname == NULL)
+ fname = "gob2";
+ if (line > 0)
+ fprintf(stderr, "%s:%d: %s %s\n", fname, line, w, error);
else
- fprintf(stderr, "%s: %s %s\n", filename, w, error);
- if(exit_on_error &&
- (type == GOB_ERROR ||
- (type == GOB_WARN && exit_on_warn)))
+ fprintf(stderr, "%s: %s %s\n", fname, w, error);
+ if (exit_on_error && got_error)
exit(1);
}
else
s = g_strconcat(pre, "_", name, NULL);
- g_strup(s);
+ gob_strup (s);
g_free(ns);
g_free(name);
return g_string_free (gs, FALSE);
}
+char *
+gob_strup (char *str)
+{
+ char *s;
+ for (s = str; *s; s++)
+ *s = g_ascii_toupper (*s);
+
+ return str;
+}
+
+char *
+gob_strdown (char *str)
+{
+ char *s;
+ for (s = str; *s; s++)
+ *s = g_ascii_tolower (*s);
+
+ return str;
+}
+