evince r3445 - in trunk: . libdocument
- From: chpe svn gnome org
- To: svn-commits-list gnome org
- Subject: evince r3445 - in trunk: . libdocument
- Date: Sun, 15 Feb 2009 13:52:14 +0000 (UTC)
Author: chpe
Date: Sun Feb 15 13:52:14 2009
New Revision: 3445
URL: http://svn.gnome.org/viewvc/evince?rev=3445&view=rev
Log:
* libdocument/ev-document-factory.c: (get_document_from_uri): Document
that this returns either NULL and fills in error, or non-NULL. Use a
local GError so we can reliably check it.
Modified:
trunk/ChangeLog
trunk/libdocument/ev-document-factory.c
Modified: trunk/libdocument/ev-document-factory.c
==============================================================================
--- trunk/libdocument/ev-document-factory.c (original)
+++ trunk/libdocument/ev-document-factory.c Sun Feb 15 13:52:14 2009
@@ -104,6 +104,21 @@
return EV_COMPRESSION_NONE;
}
+
+/*
+ * get_document_from_uri:
+ * @uri: the document URI
+ * @fast: whether to use fast MIME type detection
+ * @compression: return location to store the document's compression type
+ * @error: a #GError location to store an error, or %NULL
+ *
+ * Creates a #EvDocument instance for the document at @uri, using either
+ * fast or slow MIME type detection. If a document could be created,
+ * @compression is filled in with the document's compression type.
+ * On error, %NULL is returned and @error filled in.
+ *
+ * Returns: a new #EvDocument instance, or %NULL on error
+ */
static EvDocument *
get_document_from_uri (const char *uri,
gboolean fast,
@@ -112,19 +127,22 @@
{
EvDocument *document = NULL;
gchar *mime_type = NULL;
+ GError *err = NULL;
*compression = EV_COMPRESSION_NONE;
- mime_type = ev_file_get_mime_type (uri, fast, error);
+ mime_type = ev_file_get_mime_type (uri, fast, &err);
if (mime_type == NULL) {
g_free (mime_type);
- if (*error == NULL) {
+ if (err == NULL) {
g_set_error_literal (error,
EV_DOCUMENT_ERROR,
EV_DOCUMENT_ERROR_INVALID,
_("Unknown MIME Type"));
+ } else {
+ g_propagate_error (error, err);
}
return NULL;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]