List:Commits« Previous MessageNext Message »
From:Davi Arnaut Date:October 1 2010 12:02pm
Subject:Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)
Bug#56709
View as plain text  
On 10/1/10 8:24 AM, Alexey Kopytov wrote:
> On 01.10.10 12:04, Tor Didriksen wrote:
>> On Thu, Sep 30, 2010 at 2:36 PM, Sergei Golubchik<serg@stripped>
>> wrote:
>>
>>> Hi, Davi!
>>>
>>> On Sep 30, Davi Arnaut wrote:
>>>> On 9/30/10 8:33 AM, Tor Didriksen wrote:
>>>>> On Fri, Sep 24, 2010 at 11:20 AM, Alexey Kopytov
>>>>>>>
>>>>>>> I personally think of bzero() as a convenient alias for the
> most
>>>>>>> commonly used form of memset(). In other words, even if
> bzero()
>>>>>>> did not exist, it should have been created. And we actually
> do
>>>>>>> something like that in m_string.h:
>>>>>>>
>>>>>>> #if !defined(bzero)&& !defined(HAVE_BZERO)
>>>>>>> # define bzero(A,B) memset((A),0,(B))
>>>>>>> #endif
>>>>>
>>>>> Time for another update of the style guide I guess,
>>>>> we shouldn't be recommending functions which are deprecated.
>>>>
>>>> Definitely. bzero is a officially deprecated function and we never
>>>> actually use it because it depends on some BSD defines that we never
>>>> set.
>>>
>>> So, Kaamos is right after all :)
>>>
>>> Coding style does not recommend a deprecated function, furthermore this
>>> deprecated function was never used. bzero() is just a convenience macro,
>>> and should be fine as such. The fact that libc has deprecated a function
>>> does not apply to MySQL internal macro that happen to have the same
>>> name :)
>>>
>>
>> no ??
>>
>> #if !defined(bzero)&& !defined(HAVE_BZERO)
>> # define bzero(A,B) memset((A),0,(B))
>> #endif
>>
>> configure/cmake will define HAVE_BZERO
>> and we end up calling the deprecated function in the C library
>>
>> -- didrik
>>
>
> Yes, we do use bzero(), at least on Linux, Solaris and Mac OS X, since
> we include both string.h (which defines bzero() only when __USE_BSD is
> defined) and strings.h (which seems to define bzero() on complementary
> to __USE_BSD conditions).
>
> But then again,
> http://www.opengroup.org/onlinepubs/000095399/functions/bzero.html :
>
> "For maximum portability, it is recommended to replace the function call
> to bzero() as follows:
>
> #define bzero(b,len) (memset((b), '\0', (len)), (void) 0)
> "
>
> Which is what we do in m_string.h when bzero() is unavailable. "For
> maximum portability". Does that mean we comply with POSIX? Or, why
> should we care about the legacy status of bzero() at all?
>

Take some time to read Bug#55721 and look at the condition again.
Thread
bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Alexey Kopytov22 Sep
  • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514) Bug#56709Tor Didriksen23 Sep
    • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Alexey Kopytov24 Sep
      • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514) Bug#56709Tor Didriksen30 Sep
        • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Davi Arnaut30 Sep
          • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Sergei Golubchik30 Sep
            • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Davi Arnaut30 Sep
              • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Davi Arnaut30 Sep
            • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514) Bug#56709Tor Didriksen1 Oct
              • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Alexey Kopytov1 Oct
                • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Davi Arnaut1 Oct
                  • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Alexey Kopytov2 Oct
                • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514) Bug#56709Tor Didriksen1 Oct
                  • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Alexey Kopytov1 Oct
Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Davi Arnaut1 Oct
  • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Alexey Kopytov1 Oct
Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Alexey Kopytov1 Oct
  • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Davi Arnaut1 Oct
    • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Alexey Kopytov1 Oct
      • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Davi Arnaut1 Oct
        • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Alexey Kopytov1 Oct
          • Re: bzr commit into mysql-5.1-bugteam branch (Alexey.Kopytov:3514)Bug#56709Davi Arnaut1 Oct