On 14 May 2015 at 15:37, Branko Čibej <br...@wandisco.com> wrote:
> On 13.05.2015 19:04, Ivan Zhakov wrote:
>> [adjusting subject to make it valid vote thread]
>>
>> On 13 May 2015 at 19:23, Stefan Fuhrmann <stefan.fuhrm...@wandisco.com> 
>> wrote:
>>> Hi there,
>>>
>>> Ivan has reviewed my recent membuffer cache
>>> key handling changes, corrected and backported
>>> them on the 1.9-cache-improvements branch.
>>>
>>> I reviewed it and I'm +1 on merging it to /trunk -
>>> hoping we may even get it into 1.9. Since this
>>> touches a sensitive part of the server code, I'd
>>> like to see 2 more +1s for the branch->/trunk
>>> merge.
>>>
>> +1.
>>
>> PS: I think detailed log message will be useful for reviewers. I'll
>> make it tomorrow if you didn't outstrip me.
>
> -0 because:
>
> $ make
> .../subversion/libsvn_subr/cache-membuffer.c:2626:59: warning: implicit 
> conversion loses integer
>       precision: 'unsigned long' to 'apr_uint32_t' (aka 'unsigned int') 
> [-Wshorten-64-to-32]
>   cache->combined_key.entry_key.key_len = aligned_key_len + prefix_len;
>                                         ~ ~~~~~~~~~~~~~~~~^~~~~~~~~~~~
> .../subversion/libsvn_subr/cache-membuffer.c:2664:58: warning: implicit 
> conversion loses integer
>       precision: 'unsigned long' to 'apr_uint32_t' (aka 'unsigned int') 
> [-Wshorten-64-to-32]
>       cache->combined_key.entry_key.key_len = prefix_len + 16;
>                                             ~ ~~~~~~~~~~~^~~~
> .../subversion/libsvn_subr/cache-membuffer.c:3161:37: warning: implicit 
> conversion loses integer
>       precision: 'apr_size_t' (aka 'unsigned long') to 'apr_uint32_t' (aka 
> 'unsigned int') [-Wshorten-64-to-32]
>   cache->prefix.entry_key.key_len = prefix_len;
>                                   ~ ^~~~~~~~~~
> 3 warnings generated.
>
> +1 if these warnings get fixed before or as part of the merge without
> adding casts.
>

I suggest attached patch to resolve these warnings.

Log message:
[[[
* subversion/libsvn_subr/cache-membuffer.c
  (entry_key_t): Change type of KEY_LEN field to apr_size_t instead of
   apr_uint32_t.
]]]


-- 
Ivan Zhakov
Index: subversion/libsvn_subr/cache-membuffer.c
===================================================================
--- subversion/libsvn_subr/cache-membuffer.c    (revision 1679357)
+++ subversion/libsvn_subr/cache-membuffer.c    (working copy)
@@ -197,7 +197,7 @@
 
   /* Length of the full key.  This value is aligned to ITEM_ALIGNMENT to
    * make sure the subsequent item content is properly aligned. */
-  apr_uint32_t key_len;
+  apr_size_t key_len;
 } entry_key_t;
 
 /* A full key, i.e. the combination of the cache's key prefix with some

Reply via email to