Sfoglia il codice sorgente

presence(k): insert empty string as sender in db if missing

- if sender_uri parameter is not given to handle_publish(), insert empty
  string for sender column in presentity table
- the field is used for SLA/BLA
- fixes constraint of non-null value in db table, reported by Roberto
  Fichera
Daniel-Constantin Mierla 14 anni fa
parent
commit
b39747e213
1 ha cambiato i file con 9 aggiunte e 5 eliminazioni
  1. 9 5
      modules_k/presence/presentity.c

+ 9 - 5
modules_k/presence/presentity.c

@@ -354,15 +354,19 @@ int update_presentity(struct sip_msg* msg, presentity_t* presentity, str* body,
 				(int)time(NULL);
 		n_query_cols++;
 	
-		if( presentity->sender)
+		query_cols[n_query_cols] = &str_sender_col;
+		query_vals[n_query_cols].type = DB1_STR;
+		query_vals[n_query_cols].nul = 0;
+		if(presentity->sender)
 		{
-			query_cols[n_query_cols] = &str_sender_col;
-			query_vals[n_query_cols].type = DB1_STR;
-			query_vals[n_query_cols].nul = 0;
 			query_vals[n_query_cols].val.str_val.s = presentity->sender->s;
 			query_vals[n_query_cols].val.str_val.len = presentity->sender->len;
-			n_query_cols++;
+		} else {
+			query_vals[n_query_cols].val.str_val.s = "";
+			query_vals[n_query_cols].val.str_val.len = 0;
+		}
 		}
+		n_query_cols++;
 
 		query_cols[n_query_cols] = &str_body_col;
 		query_vals[n_query_cols].type = DB1_BLOB;