Changeset - 0cb5e6f974b8
[Not reviewed]
default
0 1 0
Nathan Brink (binki) - 16 years ago 2010-02-21 14:21:20
ohnobinki@ohnopublishing.net
support the case where mysql returns no results
1 file changed with 9 insertions and 0 deletions:
0 comments (0 inline, 0 general)
src/server/mysql.c
Show inline comments
 
@@ -172,27 +172,36 @@ distrend_mysql_result_t mysqlQuery(distr
 
      return NULL;
 
    }
 
  fprintf(stderr,"Queried!\n");
 

	
 
  fprintf(stderr,"Getting results... ");
 
  result = mysql_use_result(conn->mysqlconn);
 
  
 
  /**
 
     Flush stuff out when an empty set is expected.
 
   */
 
  if(!expected_columns)
 
    {
 
      if(result)
 
	{
 
      while(mysql_fetch_row(result))
 
	;
 
      mysql_free_result(result);
 
	}
 
      return NULL;
 
    }
 

	
 
  if(!result)
 
    {
 
      fprintf(stderr, "expected response/result for query ``%s'', got nothing\n", query);
 
      return NULL;
 
    }
 

	
 
  /**
 
     Sanity check
 
   */
 
  num_columns = mysql_num_fields(result);
 
  if(num_columns != expected_columns)
 
    {
 
      fprintf(stderr, "Expected %d columns, got %d for ``%s''\n", expected_columns, num_columns, query);
 
      
 
      mysql_free_result(result);
0 comments (0 inline, 0 general)