As far as I can tell, libpurple removes the timeout at the right time; there's no code path that can let haze's idle callback fire before libpurple's one has either run or been cancelled. So I can't see why this would happen, and I can't reproduce it any more.
As far as I can tell, libpurple removes the timeout at the right time; there's no code path that can let haze's idle callback fire before libpurple's one has either run or been cancelled. So I can't see why this would happen, and I can't reproduce it any more.