Merge branch 'master' into session_lock
authorAdam Dickmeiss <adam@indexdata.dk>
Tue, 12 Mar 2013 14:31:08 +0000 (15:31 +0100)
committerAdam Dickmeiss <adam@indexdata.dk>
Tue, 12 Mar 2013 14:31:08 +0000 (15:31 +0100)
1  2 
src/session.c

diff --cc src/session.c
@@@ -1238,27 -1203,24 +1237,24 @@@ struct record_cluster *show_single_star
  {
      struct record_cluster *r = 0;
  
 -    session_enter(se, "show_single_start");
 +    session_enter_ro(se, "show_single_start");
      *prev_r = 0;
      *next_r = 0;
-     if (se->reclist)
-     {
-         reclist_limit(se->reclist, se);
+     reclist_limit(se->reclist, se);
  
-         reclist_enter(se->reclist);
-         while ((r = reclist_read_record(se->reclist)))
+     reclist_enter(se->reclist);
+     while ((r = reclist_read_record(se->reclist)))
+     {
+         if (!strcmp(r->recid, id))
          {
-             if (!strcmp(r->recid, id))
-             {
-                 *next_r = reclist_read_record(se->reclist);
-                 break;
-             }
-             *prev_r = r;
+             *next_r = reclist_read_record(se->reclist);
+             break;
          }
-         reclist_leave(se->reclist);
+         *prev_r = r;
      }
+     reclist_leave(se->reclist);
      if (!r)
 -        session_leave(se, "show_single_start");
 +        session_leave_ro(se, "show_single_start");
      return r;
  }