column_types = (int *) safe_emalloc(sizeof(int), result->num_fields, 0);
for (i=0; i<result->num_fields; i++) {
+ char *source = NULL;
char *fname = (char *)dbcolname(mssql_ptr->link,i+1);
if (*fname) {
j++;
}
result->fields[i].max_length = dbcollen(mssql_ptr->link,i+1);
- result->fields[i].column_source = estrdup(dbcolsource(mssql_ptr->link,i+1));
- if (!result->fields[i].column_source) {
+ source = (char *)dbcolsource(mssql_ptr->link,i+1);
+ if (source) {
+ result->fields[i].column_source = estrdup(source);
+ }
+ else {
result->fields[i].column_source = empty_string;
}