From 1bdff9ec685287ac49fce662735da6190414f35d Mon Sep 17 00:00:00 2001 From: Jens Georg Date: Tue, 18 Jun 2013 15:54:22 +0200 Subject: [PATCH] server: Fix error codes for CreateReference https://bugzilla.gnome.org/show_bug.cgi?id=702083 --- src/librygel-server/rygel-content-directory.vala | 1 + src/librygel-server/rygel-reference-creator.vala | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/librygel-server/rygel-content-directory.vala b/src/librygel-server/rygel-content-directory.vala index 8ac31b9..9b9a147 100644 --- a/src/librygel-server/rygel-content-directory.vala +++ b/src/librygel-server/rygel-content-directory.vala @@ -37,6 +37,7 @@ internal errordomain Rygel.ContentDirectoryError { READ_ONLY_TAG = 705, PARAMETER_MISMATCH = 706, INVALID_SORT_CRITERIA = 709, + NO_SUCH_CONTAINER = 710, RESTRICTED_OBJECT = 711, BAD_METADATA = 712, RESTRICTED_PARENT = 713, diff --git a/src/librygel-server/rygel-reference-creator.vala b/src/librygel-server/rygel-reference-creator.vala index 3079f04..93c06f9 100644 --- a/src/librygel-server/rygel-reference-creator.vala +++ b/src/librygel-server/rygel-reference-creator.vala @@ -75,7 +75,11 @@ internal class Rygel.ReferenceCreator : GLib.Object, Rygel.StateMachine { this.action.return (); this.completed (); } catch (Error error) { - this.action.return_error (error.code, error.message); + if (error is ContentDirectoryError) { + this.action.return_error (error.code, error.message); + } else { + this.action.return_error (402, error.message); + } warning (_("Failed to create object under '%s': %s"), this.container_id, @@ -105,7 +109,7 @@ internal class Rygel.ReferenceCreator : GLib.Object, Rygel.StateMachine { this.cancellable); if (media_object == null || !(media_object is MediaContainer)) { - throw new ContentDirectoryError.NO_SUCH_OBJECT + throw new ContentDirectoryError.NO_SUCH_CONTAINER (_("No such object")); } else if (!(OCMFlags.UPLOAD in media_object.ocm_flags) || !(media_object is WritableContainer)) { -- 2.7.4