gthumb r2483 - in trunk: . libgthumb
- From: mjc svn gnome org
- To: svn-commits-list gnome org
- Subject: gthumb r2483 - in trunk: . libgthumb
- Date: Sat, 27 Dec 2008 11:38:13 +0000 (UTC)
Author: mjc
Date: Sat Dec 27 11:38:12 2008
New Revision: 2483
URL: http://svn.gnome.org/viewvc/gthumb?rev=2483&view=rev
Log:
2008-12-27 Michael J. Chudobiak <mjc svn gnome org>
* libgthumb/dlg-save-image.c: (save_image), (file_save_ok_cb),
(dlg_save_image_as), (dlg_save_image):
The metadata copying wasn't working quite right in the "Save As" case,
because the original uri wasn't forwarded to the metadata copying
routine. Fixed now.
Modified:
trunk/ChangeLog
trunk/libgthumb/dlg-save-image.c
Modified: trunk/libgthumb/dlg-save-image.c
==============================================================================
--- trunk/libgthumb/dlg-save-image.c (original)
+++ trunk/libgthumb/dlg-save-image.c Sat Dec 27 11:38:12 2008
@@ -89,6 +89,7 @@
static gboolean
save_image (GtkWindow *parent,
FileData *file,
+ const char *original_file,
GdkPixbuf *pixbuf,
SaveImageData *data,
GtkDialog *file_sel)
@@ -111,11 +112,14 @@
if (dlg_save_options (parent, image_type, &keys, &values)) {
char *local_file;
-
+ char *original_local_file;
+
local_file = get_cache_filename_from_uri (file->path);
+ original_local_file = get_cache_filename_from_uri (original_file);
+
if (_gdk_pixbuf_savev (pixbuf,
local_file,
- local_file,
+ original_local_file,
image_type,
keys, values,
&error))
@@ -124,6 +128,7 @@
_gtk_error_dialog_from_gerror_run (parent, &error);
g_free (local_file);
+ g_free (original_local_file);
}
g_free (image_type);
@@ -160,12 +165,14 @@
GdkPixbuf *pixbuf;
FileData *file = NULL;
const char *mime_type = NULL;
+ const char *original_file;
int idx;
SaveImageData *data;
parent = g_object_get_data (G_OBJECT (file_sel), "parent_window");
pixbuf = g_object_get_data (G_OBJECT (file_sel), "pixbuf");
data = g_object_get_data (G_OBJECT (file_sel), "data");
+ original_file = g_object_get_data (G_OBJECT (file_sel), "uri");
file = file_data_new (gtk_file_chooser_get_uri (GTK_FILE_CHOOSER (file_sel)));
@@ -177,7 +184,7 @@
mime_type = mime_types [idx - 2];
file->mime_type = get_static_string (mime_type);
- save_image (parent, file, pixbuf, data, file_sel);
+ save_image (parent, file, original_file, pixbuf, data, file_sel);
g_free (file);
}
@@ -288,6 +295,7 @@
g_object_set_data (G_OBJECT (file_sel), "pixbuf", pixbuf);
g_object_set_data (G_OBJECT (file_sel), "data", data);
g_object_set_data (G_OBJECT (file_sel), "opt_menu", opt_menu);
+ g_object_set_data (G_OBJECT (file_sel), "uri", g_strdup (uri));
g_signal_connect (GTK_DIALOG (file_sel),
"response",
@@ -326,7 +334,7 @@
data->done_data = done_data;
data->metadata = metadata;
- save_image (parent, file, pixbuf, data, NULL);
+ save_image (parent, file, file->path, pixbuf, data, NULL);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]