On Thu, Aug 13, 2009 at 11:04:52AM -0700, Ka-Hing Cheung wrote: > On Thu, 2009-08-13 at 09:16 -0700, Nick Mathewson wrote: > > On Wed, Aug 12, 2009 at 11:42:47AM -0700, Ka-Hing Cheung wrote: > > [...] > > > I do realize that this breaks existing assumptions about return values. > > > What if instead of using a different return value, we don't reset > > > base->event_gotterm and base->event_break when triggered? We can reset > > > them at the beginning of event_base_loop() instead. > > > > How would you inspect them? The event_base structure isn't exposed in > > any public headers. I suppose we could add a new accessor function. > > Right. > > > I like the idea of the original patch, but I'm also concerned about > > return values. If anyone has written code like > > "if (event_base_loop(base,0)<0)" or "if (event_base_loop(base,0)==-1)", > > they'll get unexpected results. > > Yes I like that too. I don't know how strict the api compatibility > requirement is,
The foremost API requirement is: we don't want to break source compatibility for existing correct programs. Breaking existing programs annoys developers, and prevents distributors from upgrading to new Libevent versions[*]. Since the return values for event_base_loop() and friends have been documented and relied upon for a while, I don't think that we can change them safely. > but I am willing to submit another patch (the one with > accessor to base->event_gotterm/event_break) if you think that's the > better way to do it. Probably. yrs, -- Nick _______________________________________________ Libevent-users mailing list Libevent-users@monkey.org http://monkeymail.org/mailman/listinfo/libevent-users