On Tue, Jul 16, 2002 at 10:31:46AM -0500, William A. Rowe, Jr. wrote: > At 07:23 PM 7/15/2002, Ryan Bloom wrote: > > >We could force the size, by using apr_int32_t. The problem that he is
There is no need to force the size. The value is a simple integer. There is no need to make it a long, and that integer will always be castable into a void*, and then back (when we pull it out of the hash table). I see no purpose in the patch's casting to a long. What exactly is that solving? We need a response from Peter. > >having, is that pointers on _most_ 64-bit machines (Windows is a notable > >exception, there may be others), are 64-bits long. But we are using > >int's, which are 32-bits for the pointers. We have the added problem > >that throughout the code, we pass in integers for void *'s. :-( No. You've got that backwards. We're putting integers into points, and then going back to integers. We are *not* attemping to stuff a pointer into an integer. >... > When we mean a void*, we need to spell out void*. If we need to > pass it through an integer, prove it, and we will consider an We aren't. Ryan set you off on a red herring. * mod_dav's namespace indexes are integers * we stuff those into a hash table * we extract them from a hash table Peter's patch changes the indexes to longs. Why? Cheers, -g -- Greg Stein, http://www.lyra.org/
