diff options
author | jmarshallnz <jmarshallnz@svn> | 2010-08-29 06:20:34 +0000 |
---|---|---|
committer | jmarshallnz <jmarshallnz@svn> | 2010-08-29 06:20:34 +0000 |
commit | 05c0d993a7c25740f4b2b899fed87321a6a2f84b (patch) | |
tree | 0b89d85f2477e5dfe2d0bd17fb29d81ed229e279 | |
parent | 2b16bc71e587ab1ef5fd624dec00d00711535b62 (diff) |
fixed: Ticket #10016 - Negative start/stop value in a JSON request crashes XBMC.
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@33297 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
-rw-r--r-- | xbmc/lib/libjsonrpc/FileItemHandler.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/xbmc/lib/libjsonrpc/FileItemHandler.cpp b/xbmc/lib/libjsonrpc/FileItemHandler.cpp index 7f208eb305..5bce83564f 100644 --- a/xbmc/lib/libjsonrpc/FileItemHandler.cpp +++ b/xbmc/lib/libjsonrpc/FileItemHandler.cpp @@ -136,9 +136,8 @@ void CFileItemHandler::HandleFileItemList(const char *id, bool allowFile, const const Value param = parameterObject.isObject() ? parameterObject : Value(objectValue); unsigned int size = (unsigned int)items.Size(); - unsigned int start = param.get("start", 0).asUInt(); - unsigned int end = param.get("end", size).asUInt(); - end = end > size ? size : end; + unsigned int start = (unsigned int)std::max(0,param.get("start", 0).asInt()); + unsigned int end = std::min(size,param.get("end", size).asUInt()); Sort(items, param); |