projects
/
pspp
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
uint -> guint
[pspp]
/
src
/
ui
/
gui
/
psppire-delimited-text.c
diff --git
a/src/ui/gui/psppire-delimited-text.c
b/src/ui/gui/psppire-delimited-text.c
index b02a0ac9eabcf867d4575bdfed661b8d2f6faa7a..dd13f1c384edf73a93f83027683a431ee39fe44c 100644
(file)
--- a/
src/ui/gui/psppire-delimited-text.c
+++ b/
src/ui/gui/psppire-delimited-text.c
@@
-63,14
+63,16
@@
count_delims (PsppireDelimitedText *tf)
{
gint enc = -1;
// FIXME: Box these lines to avoid constant allocation/deallocation
{
gint enc = -1;
// FIXME: Box these lines to avoid constant allocation/deallocation
- gchar *
foo = 0
;
- gtk_tree_model_get (tf->child, &iter, 1, &
foo
, -1);
+ gchar *
line = NULL
;
+ gtk_tree_model_get (tf->child, &iter, 1, &
line
, -1);
{
{
- char *
line = foo
;
+ char *
p
;
gint count = 0;
gint count = 0;
-
while (*line
)
+
for (p = line; ; p = g_utf8_find_next_char (p, NULL)
)
{
{
- const gunichar c = *line; //FIXME: Not multibyte safe!
+ const gunichar c = g_utf8_get_char (p);
+ if (c == 0)
+ break;
if (enc == -1)
{
gint i;
if (enc == -1)
{
gint i;
@@
-96,11
+98,10
@@
count_delims (PsppireDelimitedText *tf)
count++;
}
}
count++;
}
}
- line++;
}
tf->max_delimiters = MAX (tf->max_delimiters, count);
}
}
tf->max_delimiters = MAX (tf->max_delimiters, count);
}
- g_free (
foo
);
+ g_free (
line
);
}
}
}
}
@@
-591,15
+592,13
@@
psppire_delimited_text_init (PsppireDelimitedText *text_file)
}
}
-
GtkTreeModel
*
+
PsppireDelimitedText
*
psppire_delimited_text_new (GtkTreeModel *child)
{
psppire_delimited_text_new (GtkTreeModel *child)
{
- PsppireDelimitedText *retval =
+ return
g_object_new (PSPPIRE_TYPE_DELIMITED_TEXT,
"child", child,
NULL);
g_object_new (PSPPIRE_TYPE_DELIMITED_TEXT,
"child", child,
NULL);
-
- return GTK_TREE_MODEL (retval);
}
static void
}
static void