> I have supplied programs that show that there is a leak, you can fill free > to try them.
If you sent executables, they were stripped out of my email. > I agree that the documentation is not good, but it is "obvious" that > DeleteTimerQueue must be called. To be clear, we're talking about DeleteTimerQueueTimer, not DeleteTimerQueue. > See for example > http://blogs.msdn.com/b/oldnewthing/archive/2004/12/23/331246.aspx I don't follow their logic. If the OS can't automatically clean up a one-shot timer, then there's no way our abstraction can... The timer APIs seem pretty weak, and the documentation vague at best. If we need matching calls to CreateTimerQueueTimer - DeleteTimerQueueTimer, and my patch assumed that we didn't, so it would have an issue, then I think the fix is to allocate a new structure: struct timer_osd { cl_timer_t *p_timer; HANDLE timer; }; in cl_timer_trim() and pass that to the timer callback. The callback calls DeleteTimerQueueTimer if it has not already been called for the timer in question. - Sean _______________________________________________ ofw mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw
