Package: xfprint4 Version: 4.4.2-1~bpo40+2+fco Severity: normal Tags: patch
xfprint only uses settings of its start time to print, not the ones set in the print dialog. If one wants to take new settings into account, one must start it, set settings, save them, close, restart it and at last print. If one wants to change settings for a single print, it's not directly possible without double-save operations. Reading the source confirmed the observed behaviour. Correction is simple, attaching a patch file... NB: I'm running a BPO version, but the bug exists in both Debian's stable (4.3.99) and upstream (also SVN) versions. -- System Information: Debian Release: 4.0 APT prefers stable APT policy: (500, 'stable') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.18-6-686 Locale: [EMAIL PROTECTED], [EMAIL PROTECTED] (charmap=ISO-8859-15) Versions of packages xfprint4 depends on: ii libatk1.0-0 1.12.4-3 The ATK accessibility toolkit ii libc6 2.3.6.ds1-13etch5 GNU C Library: Shared libraries ii libcairo2 1.2.4-4.1+etch1 The Cairo 2D vector graphics libra ii libcupsys2 1.2.7-4etch3 Common UNIX Printing System(tm) - ii libfontconfig1 2.4.2-1.2 generic font configuration library ii libfreetype6 2.2.1-5+etch2 FreeType 2 font engine, shared lib ii libglib2.0-0 2.12.4-2 The GLib library of C routines ii libgnutls13 1.4.4-3 the GNU TLS library - runtime libr ii libgtk2.0-0 2.8.20-7 The GTK+ graphical user interface ii libpango1.0-0 1.14.8-5 Layout and rendering of internatio ii libpng12-0 1.2.15~beta5-1 PNG library - runtime ii libx11-6 2:1.0.3-7 X11 client-side library ii libxcursor1 1.1.7-4 X cursor management library ii libxext6 1:1.0.1-2 X11 miscellaneous extension librar ii libxfce4mcs-client3 4.4.2-1~bpo40+1 Client library for Xfce4 configure ii libxfce4mcs-manager3 4.4.2-1~bpo40+1 Manager library for Xfce4 configur ii libxfce4util4 4.4.2-1~bpo40+1 Utility functions library for Xfce ii libxfcegui4-4 4.4.2-1~bpo40+1 Basic GUI C functions for Xfce4 ii libxfixes3 1:4.0.1-5 X11 miscellaneous 'fixes' extensio ii libxi6 1:1.0.1-4 X11 Input extension library ii libxinerama1 1:1.0.1-4.1 X11 Xinerama extension library ii libxrandr2 2:1.1.0.2-5 X11 RandR extension library ii libxrender1 1:0.9.1-3 X Rendering Extension client libra ii zlib1g 1:1.2.3-13 compression library - runtime xfprint4 recommends no packages. Ce message est à l'attention exclusive des destinataires désignés. Il peut contenir des informations confidentielles. Si vous n'êtes pas destinataire du message, merci d'en avertir immédiatement l'expéditeur et de détruire ce message. Le contenu de ce message ne pourrait engager la responsabilité de Steria que s'il a été émis par une personne dûment habilitée agissant dans le strict cadre de ses fonctions et à des fins non étrangères à ses attributions. Bien que les meilleurs efforts soient faits pour maintenir cette transmission exempte de tout virus, l'expéditeur ne donne aucune garantie à cet égard et sa responsabilité ne saurait être engagée pour tout dommage résultant d'un virus transmis. This message is intended exclusively for the designated addressee. It may contain confidential material. If you are not the correct addressee, please notify the sender immediately and destroy the message. The content of this message will engage the responsibility of Steria only if it has been sent by an authorized person acting in the strict scope of his functions and for purposes that are related to his competence. Although reasonable efforts have been made to keep this transmission free from viruses, the sender will not be liable for damages caused by a transmitted virus.
--- xfprint-4.4.2.orig/xfprint/print_dialog.c 2007-11-17 20:31:59.000000000 +0100 +++ xfprint-4.4.2+fco/xfprint/print_dialog.c 2008-04-21 13:19:57.000000000 +0200 @@ -422,6 +422,19 @@ printers_free (printers); } +static void +print_dialog_get_settings (XfprintSettings *settings, PrintDialog * dlg) +{ + PrintDialogPrivate *priv = PRINT_DIALOG_GET_PRIVATE (dlg); + + sheets_page_get_settings (SHEETS_PAGE (priv->sheets), &settings->sheets); + vpages_page_get_settings (VPAGES_PAGE (priv->vpages), &settings->vpages); + pprint_page_get_settings (PPRINT_PAGE (priv->pprint), &settings->pprint); + input_page_get_settings (INPUT_PAGE (priv->input), &settings->input); + head_page_get_settings (HEAD_PAGE (priv->head), &settings->headings); + settings->copies = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (priv->copies)); +} + /*************/ /* callbacks */ /*************/ @@ -437,6 +450,7 @@ XfprintFilter *filter; filters = xfprint_filterlist_new (); + print_dialog_get_settings (priv->settings, dlg); if (GTK_WIDGET_IS_SENSITIVE (priv->entry_file)) { ofile = g_strdup (gtk_entry_get_text (GTK_ENTRY (priv->entry_file))); @@ -495,17 +509,11 @@ static void button_save_clicked_cb (GtkWidget * widget, PrintDialog *dlg) { - PrintDialogPrivate *priv = PRINT_DIALOG_GET_PRIVATE (dlg); XfprintSettings *settings; settings = xfprintsettings_defaults (); - sheets_page_get_settings (SHEETS_PAGE (priv->sheets), &settings->sheets); - vpages_page_get_settings (VPAGES_PAGE (priv->vpages), &settings->vpages); - pprint_page_get_settings (PPRINT_PAGE (priv->pprint), &settings->pprint); - input_page_get_settings (INPUT_PAGE (priv->input), &settings->input); - head_page_get_settings (HEAD_PAGE (priv->head), &settings->headings); - settings->copies = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (priv->copies)); + print_dialog_get_settings (settings, dlg); xfprintsettings_save (settings); xfprintsettings_free (settings);