From 45c63471977778190fb210853309821904370d48 Mon Sep 17 00:00:00 2001
From: Michael Klier <chi@chimeric.de>
Date: Tue, 11 Mar 2008 00:37:33 +0100
Subject: [PATCH] XMLRPC: pageVersions() should return the current version too

darcs-hash:20080310233733-23886-79cb51e12374a51ac2595298bf331e1525962a2f.gz
---
 lib/exe/xmlrpc.php | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/lib/exe/xmlrpc.php b/lib/exe/xmlrpc.php
index 3fe432157..87d3af07e 100644
--- a/lib/exe/xmlrpc.php
+++ b/lib/exe/xmlrpc.php
@@ -373,8 +373,13 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
             $revisions = getRevisions($id, $first, $conf['recent']+1);
         }
 
+        if(count($revisions)>0 && $first==0) {
+            array_unshift($revisions, '');  // include current revision
+            array_pop($revisions);          // remove extra log entry
+        }
+
         $hasNext = false;
-        if (count($revisions)>$conf['recent']) {
+        if(count($revisions)>$conf['recent']) {
             $hasNext = true;
             array_pop($revisions); // remove extra log entry
         }
@@ -383,6 +388,9 @@ class dokuwiki_xmlrpc_server extends IXR_IntrospectionServer {
             foreach($revisions as $rev) {
                 $file = wikiFN($id,$rev);
                 $time = @filemtime($file);
+                // we check if the page actually exists, if this is not the
+                // case this can lead to less pages being returned than
+                // specified via $conf['recent']
                 if($time){
                     $info = getRevisionInfo($id, $time, 1024);
                     if(!empty($info)) {
-- 
GitLab