Changeset 2364

Show
Ignore:
Timestamp:
07/25/07 08:49:45 (1 year ago)
Author:
jerryyu
Message:

g_string_vprintf isn't able to deal with a string with NULL pointer on Solaris.

A string with null pointer is often passed to osync_trace function in which g_strdup_vprintf
will deal with the string. On Solaris platform, g_strdup_vprintf isn't able to deal with
a string with NULL pointer. On Linux platform, although it could be dealt with, I think it's not a good way.

In the patch, for the string argument passed to osync_trace function, its pointer will be checked
at first if it is NULL or not. If it's null, the string "nil" instead of the pointer is passed.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/formats/file.c

    r1955 r2364  
    3939        osync_assert(leftfile->path); 
    4040         
    41         osync_trace(TRACE_INTERNAL, "Comparing %s and %s", leftfile->path, rightfile->path); 
     41        osync_trace(TRACE_INTERNAL, "Comparing %s and %s", leftfile->path ? leftfile->path : "nil", rightfile->path ? rightfile->path : "nil"); 
    4242                         
    4343         
     
    203203error: 
    204204         
    205         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     205        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    206206        return FALSE; 
    207207} 
  • trunk/formats/xmlformat-doc.c

    r2260 r2364  
    9696        OSyncObjFormat *format = osync_objformat_new(name, objtype, &error); 
    9797        if (!format) { 
    98                 osync_trace(TRACE_ERROR, "Unable to register format: %s", osync_error_print(&error)); 
     98                osync_trace(TRACE_ERROR, "Unable to register format: %s", osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    9999                osync_error_unref(&error); 
    100100                return FALSE; 
     
    133133 
    134134        if (!fromformat || !toformat) { 
    135                 osync_trace(TRACE_ERROR, "Unable to register converter for %s->%s, format not found\n", fromname, toname); 
     135                osync_trace(TRACE_ERROR, "Unable to register converter for %s->%s, format not found\n", fromname ? fromname : "nil", toname ? toname : "nil"); 
    136136                return FALSE; 
    137137        } 
     
    140140        conv = osync_converter_new(OSYNC_CONVERTER_CONV, fromformat, toformat, to_xml, &error); 
    141141        if (!conv) { 
    142                 osync_trace(TRACE_ERROR, "Unable to register converter: %s", osync_error_print(&error)); 
     142                osync_trace(TRACE_ERROR, "Unable to register converter: %s", osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    143143                osync_error_unref(&error); 
    144144                return FALSE; 
     
    149149        conv = osync_converter_new(OSYNC_CONVERTER_CONV, toformat, fromformat, from_xml, &error); 
    150150        if (!conv) { 
    151                 osync_trace(TRACE_ERROR, "Unable to register converter: %s", osync_error_print(&error)); 
     151                osync_trace(TRACE_ERROR, "Unable to register converter: %s", osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    152152                osync_error_unref(&error); 
    153153                return FALSE; 
     
    160160        conv = osync_converter_new_detector(plain, fromformat, detect_func, &error); 
    161161        if (!conv) { 
    162                 osync_trace(TRACE_ERROR, "Unable to register detector: %s", osync_error_print(&error)); 
     162                osync_trace(TRACE_ERROR, "Unable to register detector: %s", osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    163163                osync_error_unref(&error); 
    164164                return FALSE; 
  • trunk/formats/xmlformat.c

    r2332 r2364  
    3232static osync_bool duplicate_xmlformat(const char *uid, const char *input, unsigned int insize, char **newuid, char **output, unsigned int *outsize, osync_bool *dirty, OSyncError **error) 
    3333{ 
    34         osync_trace(TRACE_ENTRY, "%s(%s, %p, %i, %p, %p, %p, %p, %p)", __func__, uid, input, insize, newuid, output, outsize, dirty, error); 
     34        osync_trace(TRACE_ENTRY, "%s(%s, %p, %i, %p, %p, %p, %p, %p)", __func__, uid ? uid : "nil", input, insize, newuid, output, outsize, dirty, error); 
    3535         
    3636        char *buffer = NULL; 
     
    4141        OSyncXMLFormat *xmlformat = osync_xmlformat_parse(buffer, size, error); 
    4242        if (!xmlformat) { 
    43                 osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     43                osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    4444                return FALSE; 
    4545        } 
     
    6565        xmlformat = osync_xmlformat_parse(buffer, size, error); 
    6666        if (!xmlformat) { 
    67                 osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     67                osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    6868                return FALSE; 
    6969        } 
     
    114114        OSyncXMLFormat *xmlformat = osync_xmlformat_parse((char *)buffer, size, error); 
    115115        if (!xmlformat) { 
    116                 osync_trace(TRACE_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     116                osync_trace(TRACE_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    117117                return FALSE; 
    118118        } 
     
    152152        *data = (char *)osync_xmlformat_new("contact", &error); 
    153153        if (!*data) 
    154                 osync_trace(TRACE_ERROR, "%s: %s", __func__, osync_error_print(&error)); 
     154                osync_trace(TRACE_ERROR, "%s: %s", __func__, osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    155155} 
    156156 
     
    180180        *data = (char *)osync_xmlformat_new("event", &error); 
    181181        if (!*data) 
    182                 osync_trace(TRACE_ERROR, "%s: %s", __func__, osync_error_print(&error)); 
     182                osync_trace(TRACE_ERROR, "%s: %s", __func__, osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    183183} 
    184184 
     
    208208        *data = (char *)osync_xmlformat_new("todo", &error); 
    209209        if (!*data) 
    210                 osync_trace(TRACE_ERROR, "%s: %s", __func__, osync_error_print(&error)); 
     210                osync_trace(TRACE_ERROR, "%s: %s", __func__, osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    211211} 
    212212 
     
    235235        *data = (char *)osync_xmlformat_new("note", &error); 
    236236        if (!*data) 
    237                 osync_trace(TRACE_ERROR, "%s: %s", __func__, osync_error_print(&error)); 
     237                osync_trace(TRACE_ERROR, "%s: %s", __func__, osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    238238} 
    239239 
     
    258258         
    259259        const char *revision = osync_xmlfield_get_nth_key_value(xmlfield, 0); 
    260         osync_trace(TRACE_INTERNAL, "About to convert string %s", revision); 
     260        osync_trace(TRACE_INTERNAL, "About to convert string %s", revision ? revision : "nil"); 
    261261        //time_t time = vformat_time_to_unix(revision); 
    262262        time_t time = osync_time_vtime2unix(revision, 0); 
     
    266266 
    267267error:   
    268         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     268        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    269269        return -1; 
    270270} 
     
    279279        format = osync_objformat_new("xmlformat-contact", "contact", &error); 
    280280        if (!format) { 
    281                 osync_trace(TRACE_ERROR, "Unable to register format xmlformat: %s", osync_error_print(&error)); 
     281                osync_trace(TRACE_ERROR, "Unable to register format xmlformat: %s", osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    282282                osync_error_unref(&error); 
    283283                return FALSE; 
     
    304304        format = osync_objformat_new("xmlformat-event", "event", &error); 
    305305        if (!format) { 
    306                 osync_trace(TRACE_ERROR, "Unable to register format xmlformat: %s", osync_error_print(&error)); 
     306                osync_trace(TRACE_ERROR, "Unable to register format xmlformat: %s", osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    307307                osync_error_unref(&error); 
    308308                return FALSE; 
     
    329329        format = osync_objformat_new("xmlformat-todo", "todo", &error); 
    330330        if (!format) { 
    331                 osync_trace(TRACE_ERROR, "Unable to register format xmlfomat: %s", osync_error_print(&error)); 
     331                osync_trace(TRACE_ERROR, "Unable to register format xmlfomat: %s", osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    332332                osync_error_unref(&error); 
    333333                return FALSE; 
     
    354354        format = osync_objformat_new("xmlformat-note", "note", &error); 
    355355        if (!format) { 
    356                 osync_trace(TRACE_ERROR, "Unable to register format xmlfomat: %s", osync_error_print(&error)); 
     356                osync_trace(TRACE_ERROR, "Unable to register format xmlfomat: %s", osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    357357                osync_error_unref(&error); 
    358358                return FALSE; 
  • trunk/opensync/archive/opensync_archive.c

    r2295 r2364  
    4141void _osync_archive_trace(void *data, const char *query) 
    4242{ 
    43         osync_trace(TRACE_INTERNAL, "query executed: %s", query); 
     43        osync_trace(TRACE_INTERNAL, "query executed: %s", query ? query : "nil"); 
    4444} 
    4545 
     
    5858static osync_bool osync_archive_create_changes(OSyncDB *db, const char *objtype, OSyncError **error) 
    5959{ 
    60         osync_trace(TRACE_ENTRY, "%s(%p, %s, %p)", __func__, db, objtype, error);  
     60        osync_trace(TRACE_ENTRY, "%s(%p, %s, %p)", __func__, db, objtype ? objtype : "nil", error);  
    6161 
    6262        osync_assert(db); 
     
    8989 
    9090error:   
    91         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     91        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    9292        return FALSE; 
    9393} 
     
    9595static osync_bool osync_archive_create_changelog(OSyncDB *db, const char *objtype, OSyncError **error) 
    9696{ 
    97         osync_trace(TRACE_ENTRY, "%s(%p, %s, %p)", __func__, db, objtype, error);  
     97        osync_trace(TRACE_ENTRY, "%s(%p, %s, %p)", __func__, db, objtype ? objtype : "nil", error);  
    9898 
    9999        osync_assert(db); 
     
    125125 
    126126error:   
    127         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     127        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    128128        return FALSE; 
    129129} 
     
    131131static osync_bool osync_archive_create(OSyncDB *db, const char *objtype, OSyncError **error) 
    132132{ 
    133         osync_trace(TRACE_ENTRY, "%s(%p, %s, %p)", __func__, db, objtype, error);  
     133        osync_trace(TRACE_ENTRY, "%s(%p, %s, %p)", __func__, db, objtype ? objtype : "nil", error);  
    134134 
    135135        osync_assert(db); 
     
    162162 
    163163error: 
    164         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     164        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    165165        return FALSE; 
    166166} 
     
    174174OSyncArchive *osync_archive_new(const char *filename, OSyncError **error) 
    175175{ 
    176         osync_trace(TRACE_ENTRY, "%s(%s, %p)", __func__, filename, error); 
     176        osync_trace(TRACE_ENTRY, "%s(%s, %p)", __func__, filename ? filename : "nil", error); 
    177177        osync_assert(filename); 
    178178         
     
    199199 
    200200error: 
    201         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     201        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    202202        return NULL; 
    203203} 
     
    251251osync_bool osync_archive_save_data(OSyncArchive *archive, const char *uid, const char *objtype, const char *data, unsigned int size, OSyncError **error) 
    252252{ 
    253         osync_trace(TRACE_ENTRY, "%s(%p, %s, %s, %p, %u, %p)", __func__, archive, uid, objtype, data, size, error); 
     253        osync_trace(TRACE_ENTRY, "%s(%p, %s, %s, %p, %u, %p)", __func__, archive, uid ? uid : "nil", objtype ? objtype : "nil", data, size, error); 
    254254        osync_assert(archive); 
    255255        osync_assert(uid); 
     
    276276 
    277277error: 
    278         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     278        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    279279        return FALSE; 
    280280} 
     
    293293int osync_archive_load_data(OSyncArchive *archive, const char *uid, const char *objtype, char **data, unsigned int *size, OSyncError **error) 
    294294{ 
    295         osync_trace(TRACE_ENTRY, "%s(%p, %s, %s, %p, %p, %p)", __func__, archive, uid, objtype, data, size, error); 
     295        osync_trace(TRACE_ENTRY, "%s(%p, %s, %s, %p, %p, %p)", __func__, archive, uid ? uid : "nil", objtype ? objtype : "nil", data, size, error); 
    296296        osync_assert(archive); 
    297297        osync_assert(uid); 
     
    319319         
    320320error: 
    321         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     321        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    322322        return -1; 
    323323} 
     
    338338{ 
    339339         
    340         osync_trace(TRACE_ENTRY, "%s(%p, %lli, %s, %s, %lli, %lli, %p)", __func__, archive, id, uid, objtype, mappingid, memberid, error); 
     340        osync_trace(TRACE_ENTRY, "%s(%p, %lli, %s, %s, %lli, %lli, %p)", __func__, archive, id, uid ? uid : "nil", objtype ? objtype : "nil", mappingid, memberid, error); 
    341341        osync_assert(archive); 
    342342        osync_assert(uid); 
     
    372372         
    373373error: 
    374         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     374        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    375375        return 0; 
    376376} 
     
    387387osync_bool osync_archive_delete_change(OSyncArchive *archive, long long int id, const char *objtype, OSyncError **error) 
    388388{ 
    389         osync_trace(TRACE_ENTRY, "%s(%p, %lli, %s, %p)", __func__, archive, id, objtype, error); 
     389        osync_trace(TRACE_ENTRY, "%s(%p, %lli, %s, %p)", __func__, archive, id, objtype ? objtype : "nil", error); 
    390390        osync_assert(archive); 
    391391        osync_assert(objtype); 
     
    406406 
    407407error:   
    408         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     408        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    409409        return FALSE; 
    410410} 
     
    424424osync_bool osync_archive_load_changes(OSyncArchive *archive, const char *objtype, OSyncList **ids, OSyncList **uids, OSyncList **mappingids, OSyncList **memberids, OSyncError **error) 
    425425{ 
    426         osync_trace(TRACE_ENTRY, "%s(%p, %s, %p, %p, %p, %p, %p)", __func__, archive, objtype, ids, uids, mappingids, memberids, error); 
     426        osync_trace(TRACE_ENTRY, "%s(%p, %s, %p, %p, %p, %p, %p)", __func__, archive, objtype ? objtype : "nil", ids, uids, mappingids, memberids, error); 
    427427 
    428428        osync_assert(archive); 
     
    460460                *memberids = osync_list_append((*memberids), GINT_TO_POINTER((int)memberid)); 
    461461                 
    462                 osync_trace(TRACE_INTERNAL, "Loaded change with uid %s, mappingid %lli from member %lli", uid, mappingid, memberid); 
     462                osync_trace(TRACE_INTERNAL, "Loaded change with uid %s, mappingid %lli from member %lli", uid ? uid : "nil", mappingid, memberid); 
    463463        } 
    464464 
     
    468468        return TRUE; 
    469469error: 
    470         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     470        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    471471        return FALSE;    
    472472} 
     
    484484osync_bool osync_archive_load_ignored_conflicts(OSyncArchive *archive, const char *objtype, OSyncList **ids, OSyncList **changetypes, OSyncError **error) 
    485485{ 
    486         osync_trace(TRACE_ENTRY, "%s(%p, %s, %p, %p)", __func__, archive, objtype, ids, error); 
     486        osync_trace(TRACE_ENTRY, "%s(%p, %s, %p, %p)", __func__, archive, objtype ? objtype : "nil", ids, error); 
    487487 
    488488        osync_assert(archive); 
     
    523523        return TRUE; 
    524524error: 
    525         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     525        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    526526        return FALSE;    
    527527} 
     
    539539osync_bool osync_archive_save_ignored_conflict(OSyncArchive *archive, const char *objtype, long long int id, OSyncChangeType changetype, OSyncError **error) 
    540540{ 
    541         osync_trace(TRACE_ENTRY, "%s(%p, %s, %lli, %p)", __func__, archive, objtype, id, error); 
     541        osync_trace(TRACE_ENTRY, "%s(%p, %s, %lli, %p)", __func__, archive, objtype ? objtype : "nil", id, error); 
    542542 
    543543        osync_assert(archive); 
     
    560560         
    561561error: 
    562         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     562        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    563563        return FALSE; 
    564564} 
     
    575575{ 
    576576         
    577         osync_trace(TRACE_ENTRY, "%s(%p, %s, %p)", __func__, archive, objtype, error); 
     577        osync_trace(TRACE_ENTRY, "%s(%p, %s, %p)", __func__, archive, objtype ? objtype : "nil", error); 
    578578        osync_assert(archive); 
    579579        osync_assert(objtype); 
     
    595595         
    596596error: 
    597         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     597        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    598598        return FALSE; 
    599599} 
  • trunk/opensync/client/opensync_client.c

    r2013 r2364  
    450450        osync_message_read_string(message, &config); 
    451451         
    452         osync_trace(TRACE_INTERNAL, "enginepipe %s, formatdir %s, plugindir %s, pluginname %s", enginepipe, formatdir, plugindir, pluginname); 
     452        osync_trace(TRACE_INTERNAL, "enginepipe %s, formatdir %s, plugindir %s, pluginname %s", enginepipe ? enginepipe : "nil", formatdir ? formatdir : "nil", plugindir ? plugindir : "nil", pluginname ? pluginname : "nil"); 
    453453                 
    454454        /* First we connect the engine pipe if necessary*/ 
     
    538538        g_free(formatdir); 
    539539        g_free(config); 
    540         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     540        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    541541        return FALSE; 
    542542} 
     
    589589        osync_message_unref(reply); 
    590590error: 
    591         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     591        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    592592        return FALSE; 
    593593} 
     
    667667        osync_message_unref(reply); 
    668668error: 
    669         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     669        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    670670        return FALSE; 
    671671} 
     
    681681        osync_message_read_string(message, &objtype); 
    682682        osync_message_read_int(message, &slowsync); 
    683         osync_trace(TRACE_INTERNAL, "Searching sink for %s", objtype); 
     683        osync_trace(TRACE_INTERNAL, "Searching sink for %s", objtype ? objtype : "nil"); 
    684684         
    685685        OSyncObjTypeSink *sink = NULL; 
     
    732732        osync_message_unref(reply); 
    733733error: 
    734         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     734        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    735735        return FALSE; 
    736736} 
     
    744744         
    745745        osync_message_read_string(message, &objtype); 
    746         osync_trace(TRACE_INTERNAL, "Searching sink for %s", objtype); 
     746        osync_trace(TRACE_INTERNAL, "Searching sink for %s", objtype ? objtype : "nil"); 
    747747         
    748748        OSyncObjTypeSink *sink = NULL; 
     
    785785        osync_message_unref(reply); 
    786786error: 
    787         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     787        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    788788        return FALSE; 
    789789} 
     
    797797         
    798798        osync_message_read_string(message, &objtype); 
    799         osync_trace(TRACE_INTERNAL, "Searching sink for %s", objtype); 
     799        osync_trace(TRACE_INTERNAL, "Searching sink for %s", objtype ? objtype : "nil"); 
    800800         
    801801        OSyncObjTypeSink *sink = NULL; 
     
    840840        osync_message_unref(reply); 
    841841error: 
    842         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     842        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    843843        return FALSE; 
    844844} 
     
    899899        osync_message_unref(reply); 
    900900error: 
    901         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     901        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    902902        return FALSE; 
    903903} 
     
    917917        OSyncData *data = osync_change_get_data(change); 
    918918         
    919         osync_trace(TRACE_INTERNAL, "Searching sink for %s", osync_data_get_objtype(data)); 
     919        osync_trace(TRACE_INTERNAL, "Searching sink for %s", osync_data_get_objtype(data) ? osync_data_get_objtype(data) : "nil"); 
    920920         
    921921        OSyncObjTypeSink *sink = NULL; 
     
    942942 
    943943error: 
    944         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     944        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    945945        return FALSE; 
    946946} 
     
    954954         
    955955        osync_message_read_string(message, &objtype); 
    956         osync_trace(TRACE_INTERNAL, "Searching sink for %s", objtype); 
     956        osync_trace(TRACE_INTERNAL, "Searching sink for %s", objtype ? objtype : "nil"); 
    957957         
    958958        OSyncObjTypeSink *sink = NULL; 
     
    995995        osync_message_unref(reply); 
    996996error: 
    997         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     997        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    998998        return FALSE; 
    999999} 
     
    10071007         
    10081008        osync_message_read_string(message, &objtype); 
    1009         osync_trace(TRACE_INTERNAL, "Searching sink for %s", objtype); 
     1009        osync_trace(TRACE_INTERNAL, "Searching sink for %s", objtype ? objtype : "nil"); 
    10101010         
    10111011        OSyncObjTypeSink *sink = NULL; 
     
    10481048        osync_message_unref(reply); 
    10491049error: 
    1050         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1050        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    10511051        return FALSE; 
    10521052} 
     
    11581158                client->thread = NULL; 
    11591159                osync_client_shutdown(client); 
    1160                 osync_trace(TRACE_EXIT_ERROR, "%s: Unable to notify parent. no outgoing queue: %s", __func__, osync_error_print(&error)); 
     1160                osync_trace(TRACE_EXIT_ERROR, "%s: Unable to notify parent. no outgoing queue: %s", __func__, osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    11611161                osync_error_unref(&error); 
    11621162                return; 
     
    11681168                osync_client_error_shutdown(client, locerror); 
    11691169                osync_error_unref(&error); 
    1170                 osync_trace(TRACE_EXIT_ERROR, "%s: Error while sending error: %s", __func__, osync_error_print(&locerror)); 
     1170                osync_trace(TRACE_EXIT_ERROR, "%s: Error while sending error: %s", __func__, osync_error_print(&locerror) ? osync_error_print(&locerror) : "nil"); 
    11711171                osync_error_unref(&locerror); 
    11721172                return; 
     
    11761176                osync_client_error_shutdown(client, locerror); 
    11771177                osync_error_unref(&error); 
    1178                 osync_trace(TRACE_EXIT_ERROR, "%s: Error while sending error: %s", __func__, osync_error_print(&locerror)); 
     1178                osync_trace(TRACE_EXIT_ERROR, "%s: Error while sending error: %s", __func__, osync_error_print(&locerror) ? osync_error_print(&locerror) : "nil"); 
    11791179                osync_error_unref(&locerror); 
    11801180                return; 
     
    11831183        osync_message_unref(errorreply); 
    11841184 
    1185         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(&error)); 
     1185        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    11861186        osync_error_unref(&error); 
    11871187} 
     
    12261226        OSyncClient *client = osync_try_malloc0(sizeof(OSyncClient), error); 
    12271227        if (!client) { 
    1228                 osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1228                osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    12291229                return NULL; 
    12301230        } 
     
    13211321osync_bool osync_client_run_external(OSyncClient *client, char *pipe_path, OSyncPlugin *plugin, OSyncError **error) 
    13221322{ 
    1323         osync_trace(TRACE_ENTRY, "%s(%p, %s, %p, %p)", __func__, client, pipe_path, plugin, error); 
     1323        osync_trace(TRACE_ENTRY, "%s(%p, %s, %p, %p)", __func__, client, pipe_path ? pipe_path : "nil", plugin, error); 
    13241324        /* Create connection pipes **/ 
    13251325        OSyncQueue *incoming = osync_queue_new(pipe_path, error); 
     
    13551355        osync_queue_free(incoming); 
    13561356error: 
    1357         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1357        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    13581358        return FALSE; 
    13591359} 
  • trunk/opensync/client/opensync_client_proxy.c

    r2155 r2364  
    168168 
    169169        if (_osync_kill(pid, SIGTERM) < 0) { 
    170                 osync_trace(TRACE_INTERNAL, "Error killing old osplugin: %s. Stale pid file?", g_strerror(errno)); 
     170                osync_trace(TRACE_INTERNAL, "Error killing old osplugin: %s. Stale pid file?", g_strerror(errno) ? g_strerror(errno) : "nil"); 
    171171                /* Don't return failure if kill() failed, because it may be a stale pid file */ 
    172172        } 
     
    319319                        if (!osync_demarshal_objtype_sink(message, &sink, &locerror)) 
    320320                                goto error; 
    321                         osync_trace(TRACE_INTERNAL, "Received sink: %s", osync_objtype_sink_get_name(sink)); 
     321                        osync_trace(TRACE_INTERNAL, "Received sink: %s", osync_objtype_sink_get_name(sink) ? osync_objtype_sink_get_name(sink) : "nil"); 
    322322         
    323323                        proxy->objtypes = g_list_append(proxy->objtypes, sink); 
     
    783783        OSyncQueue *write2 = NULL; 
    784784         
    785         osync_trace(TRACE_ENTRY, "%s(%p, %i, %s, %p)", __func__, proxy, type, path, error); 
     785        osync_trace(TRACE_ENTRY, "%s(%p, %i, %s, %p)", __func__, proxy, type, path ? path : "nil", error); 
    786786        osync_assert(proxy); 
    787787        osync_assert(type != OSYNC_START_TYPE_UNKNOWN); 
     
    911911        osync_queue_free(write1); 
    912912error: 
    913         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     913        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    914914        return FALSE; 
    915915} 
     
    973973         
    974974error: 
    975         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     975        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    976976        return FALSE; 
    977977} 
     
    979979osync_bool osync_client_proxy_initialize(OSyncClientProxy *proxy, initialize_cb callback, void *userdata, const char *formatdir, const char *plugindir, const char *plugin, const char *groupname, const char *configdir, const char *config, OSyncError **error) 
    980980{ 
    981         osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %s, %s, %s, %s, %p, %p)", __func__, proxy, callback, userdata, formatdir, plugindir, plugin, groupname, configdir, config, error); 
     981        osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %s, %s, %s, %s, %s, %p, %p)", __func__, proxy, callback, userdata, formatdir ? formatdir : "nil", plugindir ? plugindir : "nil", plugin ? plugin : "nil", groupname ? groupname : "nil", configdir ? configdir : "nil", config, error); 
    982982        osync_assert(proxy); 
    983983         
     
    10211021        osync_message_unref(message); 
    10221022error: 
    1023         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1023        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    10241024        return FALSE; 
    10251025} 
     
    10541054        osync_message_unref(message); 
    10551055error: 
    1056         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1056        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    10571057        return FALSE; 
    10581058} 
     
    10871087        osync_message_unref(message); 
    10881088error: 
    1089         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1089        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    10901090        return FALSE; 
    10911091} 
     
    11051105osync_bool osync_client_proxy_connect(OSyncClientProxy *proxy, connect_cb callback, void *userdata, const char *objtype, osync_bool slowsync, OSyncError **error) 
    11061106{ 
    1107         osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %s, %p)", __func__, proxy, callback, userdata, objtype, error); 
     1107        osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %s, %p)", __func__, proxy, callback, userdata, objtype ? objtype : "nil", error); 
    11081108         
    11091109        callContext *ctx = osync_try_malloc0(sizeof(callContext), error); 
     
    11351135        osync_message_unref(message); 
    11361136error: 
    1137         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1137        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    11381138        return FALSE; 
    11391139} 
     
    11411141osync_bool osync_client_proxy_disconnect(OSyncClientProxy *proxy, disconnect_cb callback, void *userdata, const char *objtype, OSyncError **error) 
    11421142{ 
    1143         osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %s, %p)", __func__, proxy, callback, userdata, objtype, error); 
     1143        osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %s, %p)", __func__, proxy, callback, userdata, objtype ? objtype : "nil", error); 
    11441144         
    11451145        callContext *ctx = osync_try_malloc0(sizeof(callContext), error); 
     
    11701170        osync_message_unref(message); 
    11711171error: 
    1172         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1172        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    11731173        return FALSE; 
    11741174} 
     
    12061206        osync_message_unref(message); 
    12071207error: 
    1208         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1208        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    12091209        return FALSE; 
    12101210} 
     
    12121212osync_bool osync_client_proxy_get_changes(OSyncClientProxy *proxy, get_changes_cb callback, void *userdata, const char *objtype, OSyncError **error) 
    12131213{ 
    1214         osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %s, %p)", __func__, proxy, callback, userdata, objtype, error); 
     1214        osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %s, %p)", __func__, proxy, callback, userdata, objtype ? objtype : "nil", error); 
    12151215         
    12161216        callContext *ctx = osync_try_malloc0(sizeof(callContext), error); 
     
    12411241        osync_message_unref(message); 
    12421242error: 
    1243         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1243        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    12441244        return FALSE; 
    12451245} 
     
    12791279        osync_message_unref(message); 
    12801280error: 
    1281         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1281        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    12821282        return FALSE; 
    12831283} 
     
    12851285osync_bool osync_client_proxy_committed_all(OSyncClientProxy *proxy, committed_all_cb callback, void *userdata, const char *objtype, OSyncError **error) 
    12861286{ 
    1287         osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %s, %p)", __func__, proxy, callback, userdata, objtype, error); 
     1287        osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %s, %p)", __func__, proxy, callback, userdata, objtype ? objtype : "nil", error); 
    12881288        osync_assert(proxy); 
    12891289         
     
    13151315        osync_message_unref(message); 
    13161316error: 
    1317         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1317        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    13181318        return FALSE; 
    13191319} 
     
    13211321osync_bool osync_client_proxy_sync_done(OSyncClientProxy *proxy, sync_done_cb callback, void *userdata, const char *objtype, OSyncError **error) 
    13221322{ 
    1323         osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %s, %p)", __func__, proxy, callback, userdata, objtype, error); 
     1323        osync_trace(TRACE_ENTRY, "%s(%p, %p, %p, %s, %p)", __func__, proxy, callback, userdata, objtype ? objtype : "nil", error); 
    13241324        osync_assert(proxy); 
    13251325         
     
    13511351        osync_message_unref(message); 
    13521352error: 
    1353         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     1353        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    13541354        return FALSE; 
    13551355} 
  • trunk/opensync/client/osplugin.c

    r1072 r2364  
    128128        osync_client_unref(client); 
    129129         
    130         osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(&error)); 
     130        osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(&error) ? osync_error_print(&error) : "nil"); 
    131131        fprintf(stderr, "Unable to initialize environment: %s\n", osync_error_print(&error)); 
    132132        osync_error_unref(&error); 
  • trunk/opensync/data/opensync_data.c

    r2123 r2364  
    347347        time_t time = osync_objformat_get_revision(format, data->data, data->size, error); 
    348348        if (time == -1) { 
    349                 osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     349                osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    350350                return -1; 
    351351        } 
  • trunk/opensync/db/opensync_db.c

    r2175 r2364  
    2727static void _osync_db_trace(void *data, const char *query) 
    2828{ 
    29         osync_trace(TRACE_INTERNAL, "osync_db query executed: %s", query); 
     29        osync_trace(TRACE_INTERNAL, "osync_db query executed: %s", query ? query: "nil"); 
    3030} 
    3131*/ 
     
    4242        OSyncDB *db = osync_try_malloc0(sizeof(OSyncDB), error); 
    4343        if (!db) { 
    44                 osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error)); 
     44                osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, osync_error_print(error) ? osync_error_print(error) : "nil"); 
    4545                return NULL; 
    4646        } 
     
    6060osync_bool osync_db_open(OSyncDB *db, const char *dbfile, OSyncError **error) 
    6161{ 
    62         osync_trace(TRACE_ENTRY, "%s(%p, %s, %p)", __func__, db, dbfile, error); 
     62        osync_trace(TRACE_ENTRY, "%s(%p, %s, %p)", __func__, db, dbfile ? dbfile : "nil", error); 
    6363 
    6464        osync_assert(db); 
     
    6767        if (sqlite3_open(dbfile, &(db->sqlite3db)) != SQLITE_OK) { 
    6868                osync_error_set(error, OSYNC_ERROR_GENERIC, "Cannot open database: %s", sqlite3_errmsg(db->sqlite3db)); 
    69                 osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, sqlite3_errmsg(db->sqlite3db)); 
     69                osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, sqlite3_errmsg(db->sqlite3db) ? sqlite3_errmsg(db->sqlite3db) : "nil"); 
    7070                return FALSE; 
    7171        } 
     
    9191        if (rc) { 
    9292                osync_error_set(error, OSYNC_ERROR_GENERIC, "Cannot close database: %s", sqlite3_errmsg(db->sqlite3db)); 
    93                 osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, sqlite3_errmsg(db->sqlite3db)); 
     93                osync_trace(TRACE_EXIT_ERROR, "%s: %s", __func__, sqlite3_errmsg(db->sqlite3db) ? sqlite3_errmsg(db->sqlite3db) : "nil"); 
    9494                return FALSE; 
    9595        } 
     
    109109int osync_db_count(OSyncDB *db, const char *query, OSyncError **error) 
    110110{ 
    111         osync_trace(TRACE_ENTRY, "%s(%p, %s, %p)", __func__, db, query, error); 
     111        osync_trace(TRACE_ENTRY, "%s(%p, %s, %p)", __func__, db, query ? query : "nil", error); 
    112112         
    113113        osync_assert(db);