Diff for /libaitrpc/src/lists.c between versions 1.4.2.3 and 1.4.2.5

version 1.4.2.3, 2011/09/01 11:39:26 version 1.4.2.5, 2011/09/01 15:29:39
Line 221  rpc_srv_registerCall(rpc_srv_t * __restrict srv, const Line 221  rpc_srv_registerCall(rpc_srv_t * __restrict srv, const
         func->func_next = srv->srv_funcs;          func->func_next = srv->srv_funcs;
         srv->srv_funcs = func;          srv->srv_funcs = func;
         pthread_mutex_unlock(&srv->srv_mtx);          pthread_mutex_unlock(&srv->srv_mtx);
           printf("<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<func(%s)=%p\n", func->func_name, func);
         return 0;          return 0;
 }  }
   
Line 254  rpc_srv_unregisterCall(rpc_srv_t * __restrict srv, con Line 255  rpc_srv_unregisterCall(rpc_srv_t * __restrict srv, con
         func.func_tag = crcFletcher16((u_short*) str, sizeof str / 2);          func.func_tag = crcFletcher16((u_short*) str, sizeof str / 2);
         func.func_hash = hash_fnv((char*) str, sizeof str);          func.func_hash = hash_fnv((char*) str, sizeof str);
   
           pthread_mutex_lock(&srv->srv_mtx);
         f = rpc_srv_getCall(srv, func.func_tag, func.func_hash);          f = rpc_srv_getCall(srv, func.func_tag, func.func_hash);
         if (!f)                         /* not found element for unregister */          if (!f)                         /* not found element for unregister */
                 return 0;                  return 0;
   
        pthread_mutex_lock(&srv->srv_mtx);        printf(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>func(%s)=%p\n", f->func_name, f);
         if (srv->srv_funcs == f) {      /* if is 1st element */          if (srv->srv_funcs == f) {      /* if is 1st element */
                 srv->srv_funcs = srv->srv_funcs->func_next;                  srv->srv_funcs = srv->srv_funcs->func_next;
   
                if (f->func_vars)                rpc_srv_destroyVars(f);
                        rpc_srv_destroyVars(f); 
                 free(f);                  free(f);
                   f = NULL;
         } else {          } else {
                 for (curr = srv->srv_funcs; curr->func_next != f; curr = curr->func_next);                  for (curr = srv->srv_funcs; curr->func_next != f; curr = curr->func_next);
                 curr->func_next = curr->func_next->func_next;                  curr->func_next = curr->func_next->func_next;
   
                if (f->func_vars)                rpc_srv_destroyVars(f);
                        rpc_srv_destroyVars(f); 
                 free(f);                  free(f);
                   f = NULL;
         }          }
         pthread_mutex_unlock(&srv->srv_mtx);          pthread_mutex_unlock(&srv->srv_mtx);
   
Line 353  rpc_srv_getBLOB(rpc_srv_t * __restrict srv, uint32_t v Line 355  rpc_srv_getBLOB(rpc_srv_t * __restrict srv, uint32_t v
                 return NULL;                  return NULL;
         }          }
   
         pthread_mutex_lock(&srv->srv_blob.mtx);  
         for (b = srv->srv_blob.blobs; b; b = b->blob_next) {          for (b = srv->srv_blob.blobs; b; b = b->blob_next) {
                 if (b->blob_var == var)                  if (b->blob_var == var)
                         break;                          break;
         }          }
         pthread_mutex_unlock(&srv->srv_blob.mtx);  
   
         return b;          return b;
 }  }

Removed from v.1.4.2.3  
changed lines
  Added in v.1.4.2.5


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>