]> www.fi.muni.cz Git - evince.git/blobdiff - backend/djvu/djvu-document.c
Don't overwite an error.
[evince.git] / backend / djvu / djvu-document.c
index 40950c7829c8bf68fab7f56f5d994af717097cba..de85c1d4b30250a3755ddbdfd867693ae73f78c1 100644 (file)
@@ -32,9 +32,9 @@
 #include "ev-selection.h"
 #include "ev-file-helpers.h"
 
-#include <gdk-pixbuf/gdk-pixbuf-core.h>
-#include <glib/gi18n.h>
-#include <glib/gunicode.h>
+#include <glib.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+#include <glib/gi18n-lib.h>
 #include <string.h>
 
 #define SCALE_FACTOR 0.2
@@ -97,9 +97,9 @@ handle_message (const ddjvu_message_t *msg, GError **error)
                        }
                        
                        if (error) {
-                               g_set_error (error, EV_DJVU_ERROR, 0, error_str);
+                               g_set_error_literal (error, EV_DJVU_ERROR, 0, error_str);
                        } else {
-                               g_warning (error_str);
+                               g_warning ("%s", error_str);
                        }
                                
                        g_free (error_str);
@@ -168,6 +168,10 @@ djvu_document_load (EvDocument  *document,
 
        if (!doc) {
                g_free (filename);
+               g_set_error_literal (error,
+                                    EV_DOCUMENT_ERROR,
+                                    EV_DOCUMENT_ERROR_INVALID,
+                                    _("DJVU document has incorrect format"));
                return FALSE;
        }
 
@@ -178,10 +182,10 @@ djvu_document_load (EvDocument  *document,
 
        djvu_wait_for_message (djvu_document, DDJVU_DOCINFO, &djvu_error);
        if (djvu_error) {
-               g_set_error (error,
-                            EV_DOCUMENT_ERROR,
-                            EV_DOCUMENT_ERROR_INVALID,
-                            djvu_error->message);
+               g_set_error_literal (error,
+                                    EV_DOCUMENT_ERROR,
+                                    EV_DOCUMENT_ERROR_INVALID,
+                                    djvu_error->message);
                g_error_free (djvu_error);
                g_free (filename);
                ddjvu_document_release (djvu_document->d_document);
@@ -194,10 +198,10 @@ djvu_document_load (EvDocument  *document,
                djvu_handle_events (djvu_document, TRUE, &djvu_error);
 
        if (djvu_error) {
-               g_set_error (error,
-                            EV_DOCUMENT_ERROR,
-                            EV_DOCUMENT_ERROR_INVALID,
-                            djvu_error->message);
+               g_set_error_literal (error,
+                                    EV_DOCUMENT_ERROR,
+                                    EV_DOCUMENT_ERROR_INVALID,
+                                    djvu_error->message);
                g_error_free (djvu_error);
                g_free (filename);
                ddjvu_document_release (djvu_document->d_document);
@@ -241,11 +245,11 @@ djvu_document_load (EvDocument  *document,
        g_free (filename);
 
        if (missing_files) {
-               g_set_error (error,
-                            G_FILE_ERROR,
-                            G_FILE_ERROR_EXIST,
-                            _("The document is composed by several files. "
-                              "One or more of such files cannot be accessed."));
+               g_set_error_literal (error,
+                                     G_FILE_ERROR,
+                                     G_FILE_ERROR_EXIST,
+                                    _("The document is composed of several files. "
+                                       "One or more of such files cannot be accessed."));
 
                return FALSE;
        }