diff -r f600b0d1fc5d -r faab25d520dd bl/textfileutils.c --- a/bl/textfileutils.c Fri Jan 27 10:30:16 2012 +0000 +++ b/bl/textfileutils.c Fri Jan 27 16:18:02 2012 +0000 @@ -9,25 +9,30 @@ * DOS-style line endings are handled transparently even on platforms which * don't normally use this format. */ -boolean file_get_contents_text(const char *filename,char **contents, +gboolean file_get_contents_text(const char *filename,char **contents, size_t *length) { int i; char *raw; size_t raw_length; - String *string; - if (!file_get_contents(filename,&raw,&raw_length)) + GString *string; + GError *error=NULL; + if (!g_file_get_contents(filename,&raw,&raw_length,&error)) + { + fprintf(stderr,"%s: %s\n",filename,error->message); + g_error_free(error); return FALSE; - string=string_new(NULL); + } + string=g_string_new(NULL); for(i=0;ilen; if (contents) - *contents=string_free(string,FALSE); + *contents=g_string_free(string,FALSE); else - string_free(string,TRUE); + g_string_free(string,TRUE); return TRUE; }