Browse code

modules_k/pua: Fixed CSeq double increment bug

- This was added during the recent PUA DB only mode performance
improvements.
- This bug doesn't really do any harm as things work as long as the
CSeq is going up - but it wasn't right.

Peter Dunkley authored on 02/04/2012 10:47:23
Showing 2 changed files
... ...
@@ -260,9 +260,6 @@ void insert_htable(ua_pres_t* presentity)
260 260
 	hash_code= core_hash(presentity->pres_uri,presentity->watcher_uri, HASH_SIZE);
261 261
 	lock_get(&HashT->p_records[hash_code].lock);
262 262
 
263
-	if (presentity->watcher_uri)
264
-		presentity->cseq++;
265
-
266 263
 	_insert_htable(presentity, hash_code);
267 264
 
268 265
 	lock_release(&HashT->p_records[hash_code].lock);
... ...
@@ -698,4 +695,4 @@ list_entry_t *get_subs_list(str *did)
698 695
 	}
699 696
 done:
700 697
 	return list;
701
-}
698
+}
702 699
\ No newline at end of file
... ...
@@ -525,7 +525,7 @@ int convert_temporary_dialog_puadb(ua_pres_t *pres)
525 525
 	query_cols[n_query_cols] = &str_cseq_col;
526 526
 	query_vals[n_query_cols].type = DB1_INT;
527 527
 	query_vals[n_query_cols].nul = 0;
528
-	query_vals[n_query_cols].val.int_val = pres->cseq + 1;
528
+	query_vals[n_query_cols].val.int_val = pres->cseq;
529 529
 	n_query_cols++;
530 530
 
531 531
 	query_cols[n_query_cols] = &str_record_route_col;
... ...
@@ -1092,7 +1092,7 @@ int insert_dialog_puadb(ua_pres_t* pres)
1092 1092
 	db_cols[n_cols] = &str_cseq_col;
1093 1093
 	db_vals[n_cols].type = DB1_INT;
1094 1094
 	db_vals[n_cols].nul = 0;
1095
-	db_vals[n_cols].val.int_val = pres->cseq + 1;
1095
+	db_vals[n_cols].val.int_val = pres->cseq;
1096 1096
 	n_cols++;
1097 1097
 
1098 1098
 	db_cols[n_cols] = &str_record_route_col;
... ...
@@ -1333,7 +1333,7 @@ int update_dialog_puadb(ua_pres_t *pres, int expires, str *contact)
1333 1333
 	u_cols[n_update_cols] = &str_cseq_col;
1334 1334
 	u_vals[n_update_cols].type = DB1_INT;
1335 1335
 	u_vals[n_update_cols].nul = 0;
1336
-	u_vals[n_update_cols].val.int_val = pres->cseq + 1;
1336
+	u_vals[n_update_cols].val.int_val = pres->cseq;
1337 1337
 	n_update_cols++;
1338 1338
 
1339 1339
 	u_cols[n_update_cols] = &str_remote_contact_col;
... ...
@@ -1566,4 +1566,4 @@ list_entry_t *get_subs_list_puadb(str *did)
1566 1566
 			&& (RES_ROWS(res)>0));
1567 1567
 
1568 1568
 	return list;
1569
-}
1569
+}
1570 1570
\ No newline at end of file