if( ref_cnt )\r
{\r
/* Wait for all other references to go away. */\r
- cl_event_wait_on( &p_obj->event, 10000000, FALSE );\r
+#if DBG\r
+ /*\r
+ * In debug builds, we assert every 10 seconds - a synchronous\r
+ * destruction should not take that long.\r
+ */\r
+ while( cl_event_wait_on( &p_obj->event, 10000000, FALSE ) ==\r
+ CL_TIMEOUT )\r
+ {\r
+ CL_ASSERT( !ref_cnt );\r
+ }\r
+#else /* DBG */\r
+ cl_event_wait_on( &p_obj->event, EVENT_NO_TIMEOUT, FALSE );\r
+#endif /* DBG */\r
}\r
__destroy_cb( &p_obj->async_item );\r
}\r