diff options
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | comics/comics-document.c | 19 | ||||
-rw-r--r-- | djvu/djvu-document.c | 32 | ||||
-rw-r--r-- | dvi/dvi-document.c | 32 | ||||
-rw-r--r-- | lib/ev-file-helpers.c | 39 | ||||
-rw-r--r-- | lib/ev-file-helpers.h | 4 | ||||
-rw-r--r-- | pixbuf/pixbuf-document.c | 32 | ||||
-rw-r--r-- | tiff/tiff-document.c | 32 |
8 files changed, 64 insertions, 138 deletions
@@ -1,3 +1,15 @@ +2006-01-19 Jani Monoses <jani.monoses@gmail.com> + + * comics/comics-document.c: (comics_document_save): + * djvu/djvu-document.c: (djvu_document_save): + * dvi/dvi-document.c: (dvi_document_save): + * lib/ev-file-helpers.c: (ev_tmp_filename), (ev_xfer_uri_simple): + * lib/ev-file-helpers.h: + * pixbuf/pixbuf-document.c: (pixbuf_document_save): + * tiff/tiff-document.c: (tiff_document_save): + + Use common save function for backends. + 2006-01-18 Jani Monoses <jani.monoses@gmail.com> * backend/ev-document-types.c: diff --git a/comics/comics-document.c b/comics/comics-document.c index 93cd009..7877f50 100644 --- a/comics/comics-document.c +++ b/comics/comics-document.c @@ -21,7 +21,6 @@ #include <string.h> #include <glib/gi18n.h> #include <libgnomevfs/gnome-vfs-mime-utils.h> -#include <libgnomevfs/gnome-vfs-xfer.h> #include "comics-document.h" #include "ev-document-misc.h" @@ -164,22 +163,8 @@ comics_document_save (EvDocument *document, GError **error) { ComicsDocument *comics_document = COMICS_DOCUMENT (document); - GnomeVFSURI *source, *target; - GnomeVFSResult ret; - - source = gnome_vfs_uri_new (comics_document->archive); - target = gnome_vfs_uri_new (uri); - - ret = gnome_vfs_xfer_uri (source, target, - GNOME_VFS_XFER_DEFAULT, - GNOME_VFS_XFER_ERROR_MODE_ABORT, - GNOME_VFS_XFER_OVERWRITE_MODE_REPLACE, - NULL, NULL); - - gnome_vfs_uri_unref (source); - gnome_vfs_uri_unref (target); - - return ret == GNOME_VFS_OK; + + return ev_xfer_uri_simple (comics_document->archive, uri, error); } static int diff --git a/djvu/djvu-document.c b/djvu/djvu-document.c index 8819e73..135d81c 100644 --- a/djvu/djvu-document.c +++ b/djvu/djvu-document.c @@ -25,11 +25,6 @@ #include <gtk/gtk.h> #include <gdk-pixbuf/gdk-pixbuf-core.h> -#include <libgnomevfs/gnome-vfs-uri.h> -#include <libgnomevfs/gnome-vfs-utils.h> -#include <libgnomevfs/gnome-vfs-ops.h> -#include <libgnomevfs/gnome-vfs-xfer.h> - #define SCALE_FACTOR 0.2 enum { @@ -105,31 +100,8 @@ djvu_document_save (EvDocument *document, GError **error) { DjvuDocument *djvu_document = DJVU_DOCUMENT (document); - GnomeVFSResult result; - GnomeVFSURI *source_uri; - GnomeVFSURI *target_uri; - - if (!djvu_document->uri) - return FALSE; - - source_uri = gnome_vfs_uri_new (djvu_document->uri); - target_uri = gnome_vfs_uri_new (uri); - - result = gnome_vfs_xfer_uri (source_uri, target_uri, - GNOME_VFS_XFER_DEFAULT | GNOME_VFS_XFER_FOLLOW_LINKS, - GNOME_VFS_XFER_ERROR_MODE_ABORT, - GNOME_VFS_XFER_OVERWRITE_MODE_REPLACE, - NULL, - NULL); - gnome_vfs_uri_unref (target_uri); - gnome_vfs_uri_unref (source_uri); - - if (result != GNOME_VFS_OK) - g_set_error (error, - EV_DOCUMENT_ERROR, - 0, - gnome_vfs_result_to_string (result)); - return (result == GNOME_VFS_OK); + + return ev_xfer_uri_simple (djvu_document->uri, uri, error); } static int diff --git a/dvi/dvi-document.c b/dvi/dvi-document.c index 6ecbc3a..81a2af2 100644 --- a/dvi/dvi-document.c +++ b/dvi/dvi-document.c @@ -29,10 +29,6 @@ #include <gtk/gtk.h> #include <glib/gi18n.h> -#include <libgnomevfs/gnome-vfs-uri.h> -#include <libgnomevfs/gnome-vfs-utils.h> -#include <libgnomevfs/gnome-vfs-ops.h> -#include <libgnomevfs/gnome-vfs-xfer.h> GMutex *dvi_context_mutex = NULL; @@ -132,32 +128,8 @@ dvi_document_save (EvDocument *document, GError **error) { DviDocument *dvi_document = DVI_DOCUMENT (document); - GnomeVFSResult result; - GnomeVFSURI *source_uri; - GnomeVFSURI *target_uri; - - if (!dvi_document->uri) - return FALSE; - - source_uri = gnome_vfs_uri_new (dvi_document->uri); - target_uri = gnome_vfs_uri_new (uri); - - result = gnome_vfs_xfer_uri (source_uri, target_uri, - GNOME_VFS_XFER_DEFAULT | GNOME_VFS_XFER_FOLLOW_LINKS, - GNOME_VFS_XFER_ERROR_MODE_ABORT, - GNOME_VFS_XFER_OVERWRITE_MODE_REPLACE, - NULL, - NULL); - gnome_vfs_uri_unref (target_uri); - gnome_vfs_uri_unref (source_uri); - - if (result != GNOME_VFS_OK) - g_set_error (error, - EV_DOCUMENT_ERROR, - 0, - gnome_vfs_result_to_string (result)); - return (result == GNOME_VFS_OK); - return TRUE; + + return ev_xfer_uri_simple (dvi_document->uri, uri, error); } static int diff --git a/lib/ev-file-helpers.c b/lib/ev-file-helpers.c index 247e511..130c62b 100644 --- a/lib/ev-file-helpers.c +++ b/lib/ev-file-helpers.c @@ -23,9 +23,13 @@ #endif #include <sys/stat.h> +#include <unistd.h> #include <glib.h> #include <libgnome/gnome-init.h> -#include <unistd.h> +#include <libgnomevfs/gnome-vfs-uri.h> +#include <libgnomevfs/gnome-vfs-utils.h> +#include <libgnomevfs/gnome-vfs-ops.h> +#include <libgnomevfs/gnome-vfs-xfer.h> #include "ev-file-helpers.h" @@ -124,3 +128,36 @@ ev_tmp_filename (void) return filename; } + +gboolean +ev_xfer_uri_simple (const char *from, + const char *to, + GError **error) +{ + GnomeVFSResult result; + GnomeVFSURI *source_uri; + GnomeVFSURI *target_uri; + + if (!from) + return FALSE; + + source_uri = gnome_vfs_uri_new (from); + target_uri = gnome_vfs_uri_new (to); + + result = gnome_vfs_xfer_uri (source_uri, target_uri, + GNOME_VFS_XFER_DEFAULT | GNOME_VFS_XFER_FOLLOW_LINKS, + GNOME_VFS_XFER_ERROR_MODE_ABORT, + GNOME_VFS_XFER_OVERWRITE_MODE_REPLACE, + NULL, + NULL); + gnome_vfs_uri_unref (target_uri); + gnome_vfs_uri_unref (source_uri); + + if (result != GNOME_VFS_OK) + g_set_error (error, + G_FILE_ERROR, + G_FILE_ERROR_FAILED, + gnome_vfs_result_to_string (result)); + return (result == GNOME_VFS_OK); + +} diff --git a/lib/ev-file-helpers.h b/lib/ev-file-helpers.h index 1d19c6d..2cc817a 100644 --- a/lib/ev-file-helpers.h +++ b/lib/ev-file-helpers.h @@ -33,6 +33,10 @@ void ev_file_helpers_shutdown (void); gchar* ev_tmp_filename (void); +gboolean ev_xfer_uri_simple (const char *from, + const char *to, + GError **error); + G_END_DECLS #endif /* EPHY_FILE_HELPERS_H */ diff --git a/pixbuf/pixbuf-document.c b/pixbuf/pixbuf-document.c index f19d2d5..e3d064d 100644 --- a/pixbuf/pixbuf-document.c +++ b/pixbuf/pixbuf-document.c @@ -20,11 +20,6 @@ #include "pixbuf-document.h" #include "ev-document-thumbnails.h" -#include <libgnomevfs/gnome-vfs-uri.h> -#include <libgnomevfs/gnome-vfs-utils.h> -#include <libgnomevfs/gnome-vfs-ops.h> -#include <libgnomevfs/gnome-vfs-xfer.h> - struct _PixbufDocumentClass { GObjectClass parent_class; @@ -84,31 +79,8 @@ pixbuf_document_save (EvDocument *document, GError **error) { PixbufDocument *pixbuf_document = PIXBUF_DOCUMENT (document); - GnomeVFSResult result; - GnomeVFSURI *source_uri; - GnomeVFSURI *target_uri; - - if (!pixbuf_document->uri) - return FALSE; - - source_uri = gnome_vfs_uri_new (pixbuf_document->uri); - target_uri = gnome_vfs_uri_new (uri); - - result = gnome_vfs_xfer_uri (source_uri, target_uri, - GNOME_VFS_XFER_DEFAULT | GNOME_VFS_XFER_FOLLOW_LINKS, - GNOME_VFS_XFER_ERROR_MODE_ABORT, - GNOME_VFS_XFER_OVERWRITE_MODE_REPLACE, - NULL, - NULL); - gnome_vfs_uri_unref (target_uri); - gnome_vfs_uri_unref (source_uri); - - if (result != GNOME_VFS_OK) - g_set_error (error, - EV_DOCUMENT_ERROR, - 0, - gnome_vfs_result_to_string (result)); - return (result == GNOME_VFS_OK); + + return ev_xfer_uri_simple (pixbuf_document->uri, uri, error); } static int diff --git a/tiff/tiff-document.c b/tiff/tiff-document.c index 7f27ad6..9f465a7 100644 --- a/tiff/tiff-document.c +++ b/tiff/tiff-document.c @@ -30,11 +30,6 @@ #include "ev-document-thumbnails.h" #include "ev-ps-exporter.h" -#include <libgnomevfs/gnome-vfs-uri.h> -#include <libgnomevfs/gnome-vfs-utils.h> -#include <libgnomevfs/gnome-vfs-ops.h> -#include <libgnomevfs/gnome-vfs-xfer.h> - struct _TiffDocumentClass { GObjectClass parent_class; @@ -128,31 +123,8 @@ tiff_document_save (EvDocument *document, GError **error) { TiffDocument *tiff_document = TIFF_DOCUMENT (document); - GnomeVFSResult result; - GnomeVFSURI *source_uri; - GnomeVFSURI *target_uri; - - if (!tiff_document->uri) - return FALSE; - - source_uri = gnome_vfs_uri_new (tiff_document->uri); - target_uri = gnome_vfs_uri_new (uri); - - result = gnome_vfs_xfer_uri (source_uri, target_uri, - GNOME_VFS_XFER_DEFAULT | GNOME_VFS_XFER_FOLLOW_LINKS, - GNOME_VFS_XFER_ERROR_MODE_ABORT, - GNOME_VFS_XFER_OVERWRITE_MODE_REPLACE, - NULL, - NULL); - gnome_vfs_uri_unref (target_uri); - gnome_vfs_uri_unref (source_uri); - - if (result != GNOME_VFS_OK) - g_set_error (error, - EV_DOCUMENT_ERROR, - 0, - gnome_vfs_result_to_string (result)); - return (result == GNOME_VFS_OK); + + return ev_xfer_uri_simple (tiff_document->uri, uri, error); } static int |