X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;ds=inline;f=backend%2Fdvi%2Fdvi-document.c;h=863276d76d5e2259084beeb0ec8cf0d84e6cbad8;hb=c24535f0f7164b69d309eb62c36b020568c7e4bd;hp=a6c33408c14d4c741b94e98440b6172e313eb7fb;hpb=e702e87e40109bafae3aa8d14875a983ad562226;p=evince.git diff --git a/backend/dvi/dvi-document.c b/backend/dvi/dvi-document.c index a6c33408..863276d7 100644 --- a/backend/dvi/dvi-document.c +++ b/backend/dvi/dvi-document.c @@ -32,6 +32,8 @@ #include #include +#include +#include GMutex *dvi_context_mutex = NULL; @@ -42,12 +44,12 @@ enum { struct _DviDocumentClass { - GObjectClass parent_class; + EvDocumentClass parent_class; }; struct _DviDocument { - GObject parent_instance; + EvDocument parent_instance; DviContext *context; DviPageSpec *spec; @@ -66,7 +68,6 @@ struct _DviDocument typedef struct _DviDocumentClass DviDocumentClass; -static void dvi_document_document_iface_init (EvDocumentIface *iface); static void dvi_document_document_thumbnails_iface_init (EvDocumentThumbnailsIface *iface); static void dvi_document_file_exporter_iface_init (EvFileExporterIface *iface); static void dvi_document_do_color_special (DviContext *dvi, @@ -228,11 +229,11 @@ dvi_document_finalize (GObject *object) G_OBJECT_CLASS (dvi_document_parent_class)->finalize (object); } - static void dvi_document_class_init (DviDocumentClass *klass) { - GObjectClass *gobject_class = G_OBJECT_CLASS (klass); + GObjectClass *gobject_class = G_OBJECT_CLASS (klass); + EvDocumentClass *ev_document_class = EV_DOCUMENT_CLASS (klass); gobject_class->finalize = dvi_document_finalize; @@ -241,27 +242,12 @@ dvi_document_class_init (DviDocumentClass *klass) mdvi_register_fonts (); dvi_context_mutex = g_mutex_new (); -} - -static EvDocumentInfo * -dvi_document_get_info (EvDocument *document) -{ - EvDocumentInfo *info; - - info = g_new0 (EvDocumentInfo, 1); - return info; -} - -static void -dvi_document_document_iface_init (EvDocumentIface *iface) -{ - iface->load = dvi_document_load; - iface->save = dvi_document_save; - iface->get_n_pages = dvi_document_get_n_pages; - iface->get_page_size = dvi_document_get_page_size; - iface->render = dvi_document_render; - iface->get_info = dvi_document_get_info; + ev_document_class->load = dvi_document_load; + ev_document_class->save = dvi_document_save; + ev_document_class->get_n_pages = dvi_document_get_n_pages; + ev_document_class->get_page_size = dvi_document_get_page_size; + ev_document_class->render = dvi_document_render; } static void @@ -398,8 +384,8 @@ dvi_document_file_exporter_end (EvFileExporter *exporter) if (success == FALSE) { g_warning ("Error: %s", err->message); - } else if (exit_stat != 0) { - g_warning ("Error: dvipdfm exited with non-zero status."); + } else if (!WIFEXITED(exit_stat) || WEXITSTATUS(exit_stat) != EXIT_SUCCESS){ + g_warning ("Error: dvipdfm does not end normally or exit with a failure status."); } if (err)