* file header...
*/
+ inflateEnd(&fp->stream);
+
fp->compressed = 0;
}
else if (status < Z_OK)
ipp->use --;
if (ipp->use > 0)
+ {
+ DEBUG_printf(("4debug_retain: %p IPP message (use=%d)", (void *)ipp, ipp->use));
return;
+ }
+
+ DEBUG_printf(("4debug_free: %p IPP message", (void *)ipp));
for (attr = ipp->attrs; attr != NULL; attr = next)
{
next = attr->next;
+ DEBUG_printf(("4debug_free: %p %s %s%s (%d values)", (void *)attr, attr->name, attr->num_values > 1 ? "1setOf " : "", ippTagString(attr->value_tag), attr->num_values));
+
ipp_free_values(attr, 0, attr->num_values);
if (attr->name)
if (!attr)
return;
+ DEBUG_printf(("4debug_free: %p %s %s%s (%d values)", (void *)attr, attr->name, attr->num_values > 1 ? "1setOf " : "", ippTagString(attr->value_tag), attr->num_values));
+
/*
* Find the attribute in the list...
*/
* Set default version - usually 2.0...
*/
+ DEBUG_printf(("4debug_alloc: %p IPP message", (void *)temp));
+
if (cg->server_version == 0)
_cupsSetDefaults();
* Initialize attribute...
*/
+ DEBUG_printf(("4debug_alloc: %p %s %s%s (%d values)", (void *)attr, name, num_values > 1 ? "1setOf " : "", ippTagString(value_tag), num_values));
+
if (name)
attr->name = _cupsStrAlloc(name);
* Reset pointers in the list...
*/
+ DEBUG_printf(("4debug_free: %p %s %s%s (%d)", (void *)*attr, (*attr)->name, (*attr)->num_values > 1 ? "1setOf " : "", ippTagString((*attr)->value_tag), (*attr)->num_values));
+ DEBUG_printf(("4debug_alloc: %p %s %s%s (%d)", (void *)temp, temp->name, temp->num_values > 1 ? "1setOf " : "", ippTagString(temp->value_tag), temp->num_values));
+
if (ipp->current == *attr && ipp->prev)
{
/*
/*
* Private threading definitions for CUPS.
*
- * Copyright 2009-2016 by Apple Inc.
+ * Copyright 2009-2017 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
extern void _cupsRWUnlock(_cups_rwlock_t *rwlock);
extern void _cupsThreadCancel(_cups_thread_t thread);
extern _cups_thread_t _cupsThreadCreate(_cups_thread_func_t func, void *arg);
+extern void _cupsThreadDetach(_cups_thread_t thread);
extern void *_cupsThreadWait(_cups_thread_t thread);
# ifdef __cplusplus
/*
* Threading primitives for CUPS.
*
- * Copyright 2009-2016 by Apple Inc.
+ * Copyright 2009-2017 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
}
+/*
+ * '_cupsThreadDetach()' - Tell the OS that the thread is running independently.
+ */
+
+void
+_cupsThreadDetach(_cups_thread_t thread)/* I - Thread ID */
+{
+ pthread_detach(thread);
+}
+
+
/*
* '_cupsThreadWait()' - Wait for a thread to exit.
*/
* everything...)
*/
-#ifdef __APPLE__
+#if defined(__APPLE__) && defined(HAVE_SSL)
char sval[1024]; /* String value */
int bval; /* Boolean value */
if (cups_apple_get_boolean(kValidateCertsKey, &bval))
cc->validate_certs = bval;
-#endif /* __APPLE__ */
+#endif /* __APPLE__ && HAVE_SSL */
}
}
/*
- * If we are going to repeat this test, sleep 1 second so we don't flood
- * the printer with requests...
+ * If we are going to repeat this test, display intermediate results...
*/
if (repeat_test)
{
cupsFilePrintf(cupsFileStdout(), " %-68.68s [", name);
}
+
+ ippDelete(response);
+ response = NULL;
}
}
while (repeat_test);