From: <svn...@op...> - 2009-03-25 15:53:02
|
Author: bellmich Date: Wed Mar 25 16:52:44 2009 New Revision: 1019 URL: http://libsyncml.opensync.org/changeset/1019 Log: updated traces to get more details from Solaris segfaults Modified: trunk/libsyncml/sml_support.c trunk/libsyncml/transports/http_server.c Modified: trunk/libsyncml/sml_support.c ============================================================================== --- trunk/libsyncml/sml_support.c Wed Mar 25 15:03:27 2009 (r1018) +++ trunk/libsyncml/sml_support.c Wed Mar 25 16:52:44 2009 (r1019) @@ -516,7 +516,7 @@ */ gboolean smlThreadCallFunctionCallback(gpointer data) { - smlTrace(TRACE_ENTRY, "%s", __func__); + smlTrace(TRACE_ENTRY, "%s(%p)", __func__, data); smlAssert(data); SmlThreadFunctionContext *ctx = data; @@ -547,11 +547,12 @@ gpointer data, SmlError **error) { - smlTrace(TRACE_ENTRY, "%s", __func__); + smlTrace(TRACE_ENTRY, "%s(%p, %p, %p, %p)", __func__, thread, func, data, error); CHECK_ERROR_REF smlAssert(func); /* initialize function context */ + smlTrace(TRACE_INTERNAL, "%s: preparing context", __func__); SmlThreadFunctionContext *ctx; ctx = smlTryMalloc0(sizeof(SmlThreadFunctionContext), error); if (!ctx) @@ -571,16 +572,21 @@ ctx->error = error; /* prepare glib source */ + smlTrace(TRACE_INTERNAL, "%s: preparing source", __func__); GSource *source = g_idle_source_new(); g_source_set_callback(source, smlThreadCallFunctionCallback, ctx, NULL); /* call function "synchronously" */ g_mutex_lock(ctx->mutex); + smlTrace(TRACE_INTERNAL, "%s: attach source", __func__); g_source_attach(source, thread->context); + smlTrace(TRACE_INTERNAL, "%s: wait for condition", __func__); g_cond_wait(ctx->cond, ctx->mutex); + smlTrace(TRACE_INTERNAL, "%s: get condition", __func__); g_mutex_unlock(ctx->mutex); /* cleanup */ + smlTrace(TRACE_INTERNAL, "%s: cleanup", __func__); SmlBool result = ctx->result; g_source_unref(source); g_mutex_free(ctx->mutex); Modified: trunk/libsyncml/transports/http_server.c ============================================================================== --- trunk/libsyncml/transports/http_server.c Wed Mar 25 15:03:27 2009 (r1018) +++ trunk/libsyncml/transports/http_server.c Wed Mar 25 16:52:44 2009 (r1019) @@ -460,8 +460,12 @@ /* signal disconnect to socket and potential client */ if (linkenv->msg) { + smlTrace(TRACE_INTERNAL, "%s: close open message/connection", __func__); soup_message_set_status (linkenv->msg, SOUP_STATUS_SERVICE_UNAVAILABLE); #ifdef HAVE_LIBSOUP22 + //soup_server_message_set_encoding ( + // SOUP_SERVER_MESSAGE (linkenv->msg), + // SOUP_TRANSFER_CONTENT_LENGTH); soup_message_io_unpause(linkenv->msg); #else soup_server_unpause_message(linkenv->env->server, linkenv->msg); |