Strip all \n's from the expression

2000-08-07  Jeffrey Stedfast  <fejj@helixcode.com>

	* providers/imap/camel-imap-utils.c (imap_translate_sexp): Strip
	all \n's from the expression

	* string-utils.c (strip): New convenience function to strip
	occurences of a single char from a string

svn path=/trunk/; revision=4576
This commit is contained in:
Jeffrey Stedfast
2000-08-07 18:54:15 +00:00
committed by Jeffrey Stedfast
parent 0a9fdd8842
commit cdb87d2e0a
4 changed files with 36 additions and 8 deletions

View File

@ -1,5 +1,11 @@
2000-08-07 Jeffrey Stedfast <fejj@helixcode.com>
* providers/imap/camel-imap-utils.c (imap_translate_sexp): Strip
all \n's from the expression
* string-utils.c (strip): New convenience function to strip
occurences of a single char from a string
* camel-mime-message.c (camel_mime_message_set_subject): Do a
g_strstrip on the subject so we can stop getting those annoying
leading spaces

View File

@ -369,9 +369,12 @@ char *
imap_translate_sexp (const char *expression)
{
struct sexp_node *root;
char *sexp;
char *sexp, *exp;
root = get_sexp_node (expression);
exp = g_strdup (expression);
strip (exp, '\n');
root = get_sexp_node (exp);
g_free (exp);
d(print_node (root, 0));
d(fprintf (stderr, "\n"));
@ -466,8 +469,8 @@ imap_translate_sexp (const char *expression)
char *sexp;
esexp = e_sexp_new ();
e_sexp_input_text (esexp, expression, strlen (expression));
e_sexp_input_text (esexp, exp, strlen (exp));
e_sexp_parse (esexp);
sexp = stresexptree (esexp->tree);

View File

@ -31,7 +31,7 @@
gboolean
string_equal_for_glist (gconstpointer v, gconstpointer v2)
{
return (!strcmp ( ((const gchar *)v), ((const gchar*)v2))) == 0;
return (!strcmp ( ((const gchar *)v), ((const gchar*)v2))) == 0;
}
/* utility func : frees a gchar element in a GList */
@ -181,10 +181,26 @@ string_unquote (gchar *string)
/* if the string is quoted, unquote it */
g_return_if_fail (string != NULL);
if (*string == '"' && *(string + strlen (string) - 1) == '"') {
*(string + strlen (string) - 1) = '\0';
if (*string)
memmove (string, string+1, strlen (string));
}
}
gchar *
strip (gchar *string, gchar c)
{
/* strip all occurances of c from the string */
gchar *src, *dst;
g_return_val_if_fail (string != NULL, NULL);
for (src = dst = string; *src; src++)
if (*src != c)
*dst++ = *src;
*dst = '\0';
return string;
}

View File

@ -54,9 +54,12 @@ GList *string_split (const gchar *string, char sep,
void string_trim (gchar *string, const gchar *chars,
StringTrimOption options);
gchar *string_prefix (const gchar *s, const gchar *suffix, gboolean *suffix_found);
gchar *string_prefix (const gchar *s, const gchar *suffix,
gboolean *suffix_found);
void string_unquote (gchar *string);
void string_unquote (gchar *string);
gchar *strip (gchar *string, gchar c);
#ifdef __cplusplus
}