summaryrefslogtreecommitdiff
path: root/src/librygel-server
diff options
context:
space:
mode:
Diffstat (limited to 'src/librygel-server')
-rw-r--r--src/librygel-server/rygel-browse.vala4
-rw-r--r--src/librygel-server/rygel-media-container.vala2
-rw-r--r--src/librygel-server/rygel-search.vala6
-rw-r--r--src/librygel-server/rygel-searchable-container.vala2
-rw-r--r--src/librygel-server/rygel-simple-container.vala8
5 files changed, 13 insertions, 9 deletions
diff --git a/src/librygel-server/rygel-browse.vala b/src/librygel-server/rygel-browse.vala
index b9319d41..a3cadfaa 100644
--- a/src/librygel-server/rygel-browse.vala
+++ b/src/librygel-server/rygel-browse.vala
@@ -111,9 +111,11 @@ internal class Rygel.Browse: Rygel.MediaQueryAction {
this.object_id,
this.index);
+ var sort_criteria = this.sort_criteria ?? container.sort_criteria;
+
var children = yield container.get_children (this.index,
this.requested_count,
- this.sort_criteria,
+ sort_criteria,
this.cancellable);
debug ("Fetched %u children of container '%s' from index %u.",
diff --git a/src/librygel-server/rygel-media-container.vala b/src/librygel-server/rygel-media-container.vala
index 5780c311..535f6288 100644
--- a/src/librygel-server/rygel-media-container.vala
+++ b/src/librygel-server/rygel-media-container.vala
@@ -121,7 +121,7 @@ public abstract class Rygel.MediaContainer : MediaObject {
*/
public async abstract MediaObjects? get_children (uint offset,
uint max_count,
- string? sort_criteria,
+ string sort_criteria,
Cancellable? cancellable)
throws Error;
diff --git a/src/librygel-server/rygel-search.vala b/src/librygel-server/rygel-search.vala
index d35be7ec..4ae99b5b 100644
--- a/src/librygel-server/rygel-search.vala
+++ b/src/librygel-server/rygel-search.vala
@@ -69,20 +69,22 @@ internal class Rygel.Search: Rygel.MediaQueryAction {
throw parser.err;
}
+ var sort_criteria = this.sort_criteria ?? container.sort_criteria;
+
if (this.hacks != null) {
return yield this.hacks.search (container,
parser.expression,
this.index,
this.requested_count,
out this.total_matches,
- this.sort_criteria,
+ sort_criteria,
this.cancellable);
} else {
return yield container.search (parser.expression,
this.index,
this.requested_count,
out this.total_matches,
- this.sort_criteria,
+ sort_criteria,
this.cancellable);
}
}
diff --git a/src/librygel-server/rygel-searchable-container.vala b/src/librygel-server/rygel-searchable-container.vala
index 8dd5e5da..469dad4c 100644
--- a/src/librygel-server/rygel-searchable-container.vala
+++ b/src/librygel-server/rygel-searchable-container.vala
@@ -45,7 +45,7 @@ public interface Rygel.SearchableContainer : MediaContainer {
uint offset,
uint max_count,
out uint total_matches,
- string? sort_criteria,
+ string sort_criteria,
Cancellable? cancellable)
throws Error;
diff --git a/src/librygel-server/rygel-simple-container.vala b/src/librygel-server/rygel-simple-container.vala
index dcb006bc..bb7d18b7 100644
--- a/src/librygel-server/rygel-simple-container.vala
+++ b/src/librygel-server/rygel-simple-container.vala
@@ -124,7 +124,7 @@ public class Rygel.SimpleContainer : Rygel.MediaContainer,
public override async MediaObjects? get_children (
uint offset,
uint max_count,
- string? sort_criteria,
+ string sort_criteria,
Cancellable? cancellable)
throws Error {
uint stop = offset + max_count;
@@ -132,7 +132,7 @@ public class Rygel.SimpleContainer : Rygel.MediaContainer,
var sorted_children = this.children.slice (0, this.child_count)
as MediaObjects;
- sorted_children.sort_by_criteria (sort_criteria ?? this.sort_criteria);
+ sorted_children.sort_by_criteria (sort_criteria);
return sorted_children.slice ((int) offset, (int) stop)
as MediaObjects;
@@ -195,14 +195,14 @@ public class Rygel.SimpleContainer : Rygel.MediaContainer,
uint offset,
uint max_count,
out uint total_matches,
- string? sort_criteria,
+ string sort_criteria,
Cancellable? cancellable)
throws Error {
return yield this.simple_search (expression,
offset,
max_count,
out total_matches,
- sort_criteria ?? this.sort_criteria,
+ sort_criteria,
cancellable);
}