On Thu, Mar 22, 2012 at 04:33, Julian Foad <julianf...@btopenworld.com> wrote: > Greg Stein wrote: >> Daniel Shahaf wrote: >>> gst...@apache.org wrote: >>>> +svn_ra_serf__copy_into_spillbuf(svn_spillbuf_t **spillbuf, >>>> + serf_bucket_t *bkt, >>>> + apr_pool_t *result_pool, >>>> + apr_pool_t *scratch_pool) >>>> +{ >>>> + status = serf_bucket_read(bkt, SERF_READ_ALL_AVAIL, &data, &len); >>>> + >>>> + /* ### we should throw an error, if the bucket does. */ >>>> + SVN_ERR_ASSERT(status == APR_SUCCESS || status == APR_EOF); >>> >>> Can we please avoid these in new code? >> >> Why? > > Hi Greg. I'm puzzled by your response. You wrote "### we should throw an > error" -- and now you're asking Daniel why?
Daniel removed one of these ASSERT uses a day or two ago. My assumption was that he was referring to that, rather than the ###. >> I see no problem here: it will just bail out with an error. > > Not true in general; only if the application writer explicitly sets the > malfunction handler to do so. I'm assuming that all applications *do* set it to return. We use SVN_ERR_ASSERT() liberally upon that assumption. > Anyway, the point is not only about how the application exits, but about > writing code that says what we mean. I have no idea what you mean here. Cheers, -g