Me again :)
 
..though I'm not an expert, I decided to simply guess the code :))
 
Adding
 
  _val = &(ROW_VALUES(_row)[col]);
 
before the switch statement fixes the bug for me. The line number 580 I gave was wrong because of some debug code I added. The line where _val = ... is added is 575. Please confirm if this is the correct fix or just works by accident :) Thanks.
 
Regards, Daniel
 

T-Mobile Deutschland GmbH
Aufsichtsrat: Hamid Akhavan (Vorsitzender)
Geschäftsführung: Philipp Humm (Sprecher), Thomas Berlemann, Stefan Homeister, Holger Kranzusch, Günther Ottendorfer, Dr. Raphael Kübler, Dr. Steffen Roehn
Handelsregister: Amtsgericht Bonn, HRB 59 19
Sitz der Gesellschaft: Bonn
WEEE-Reg.-Nr.: DE60800328

-----Ursprüngliche Nachricht-----
Von: users-bounces@openser.org [mailto:users-bounces@openser.org] Im Auftrag von Frey, Daniel (external)
Gesendet: Freitag, 17. August 2007 16:46
An: daniel@voice-system.ro
Cc: users@openser.org
Betreff: AW: [OpenSER-Users] OpenSER 1.2.2 - Problem with database (postgres?)

Hi Daniel,
 
a further analysis shows that db/db.c table_version() is causing dbf->free_result() to be called - but it never returns. In fact, the version of the database table is retrieved correctly (line 211 reads the correct value), but line 212 never returns. Checking modules/postgres/db_res.c, I found that pg_free_result() calls pg_free_columns() in line 653 (which returns), and then it calls pg_free_rows() which does not return.
 
Also, I noticed that there's a warning during the compilation about db_res.c:580: warning: ‘_val’ is used uninitialized in this function
 
Looks like a candidate - but I'm not familiar with the internals here...
 
Regards, Daniel
 

T-Mobile Deutschland GmbH
Aufsichtsrat: Hamid Akhavan (Vorsitzender)
Geschäftsführung: Philipp Humm (Sprecher), Thomas Berlemann, Stefan Homeister, Holger Kranzusch, Günther Ottendorfer, Dr. Raphael Kübler, Dr. Steffen Roehn
Handelsregister: Amtsgericht Bonn, HRB 59 19
Sitz der Gesellschaft: Bonn
WEEE-Reg.-Nr.: DE60800328