> -----Original Message-----
> From: Daniel Shahaf [mailto:danie...@elego.de]
> Sent: donderdag 19 mei 2011 17:36
> To: dev@subversion.apache.org
> Cc: Daniel Shahaf
> Subject: Re: Locking and errors (and deserialization) in inprocess-cache
> 
> Actually, the following might suffice for now:
> 
> Index: subversion/libsvn_subr/cache-inprocess.c
> ==========================================================
> =========
> --- subversion/libsvn_subr/cache-inprocess.c  (revision 1124903)
> +++ subversion/libsvn_subr/cache-inprocess.c  (working copy)
> @@ -148,19 +148,19 @@ insert_page(inprocess_cache_t *cache,
> 
>  /* If PAGE is in the circularly linked list (eg, its NEXT isn't NULL),
>   * move it to the front of the list. */
> -static svn_error_t *
> +static void
>  move_page_to_front(inprocess_cache_t *cache,
>                     struct cache_page *page)
>  {
> -  SVN_ERR_ASSERT(page != cache->sentinel);
> +  SVN_ERR_ASSERT_NO_RETURN(page != cache->sentinel);

But this would crash the application/server if it fails, while the other
would return an error if a malfunction handler is installed.

So, "no". This is not a valid alternative.

The original assert() before your original patch is a valid alternative as
that won't crash the application.

        Bert

Reply via email to