Merge branch 'master' of ssh://git/home/git/pub/pazpar2
authorSebastian Hammer <quinn@indexdata.com>
Wed, 2 Sep 2009 11:45:06 +0000 (11:45 +0000)
committerSebastian Hammer <quinn@indexdata.com>
Wed, 2 Sep 2009 11:45:06 +0000 (11:45 +0000)
1  2 
src/logic.c

diff --combined src/logic.c
@@@ -532,7 -532,7 +532,7 @@@ enum pazpar2_error_code search(struct s
      live_channels = select_targets(se, criteria);
      if (live_channels)
      {
 -        int maxrecs = live_channels * global_parameters.toget;
 +        int maxrecs = live_channels * global_parameters.toget; // This is buggy!!!
          se->reclist = reclist_create(se->nmem, maxrecs);
          se->expected_maxrecs = maxrecs;
      }
@@@ -765,14 -765,24 +765,24 @@@ void report_nmem_stats(void
  }
  #endif
  
- struct record_cluster *show_single(struct session *s, const char *id)
+ struct record_cluster *show_single(struct session *s, const char *id,
+                                    struct record_cluster **prev_r,
+                                    struct record_cluster **next_r)
  {
      struct record_cluster *r;
  
      reclist_rewind(s->reclist);
+     *prev_r = 0;
+     *next_r = 0;
      while ((r = reclist_read_record(s->reclist)))
+     {
          if (!strcmp(r->recid, id))
+         {
+             *next_r = reclist_read_record(s->reclist);
              return r;
+         }
+         *prev_r = r;
+     }
      return 0;
  }