From: Matthew Wilcox <willy@debian.org>
To: linux-ia64@vger.kernel.org
Subject: Re: [Linux-ia64] Re: memcpy failure
Date: Fri, 15 Nov 2002 14:17:55 +0000 [thread overview]
Message-ID: <marc-linux-ia64-105590709805452@msgid-missing> (raw)
In-Reply-To: <marc-linux-ia64-105590709805424@msgid-missing>
On Fri, Nov 15, 2002 at 02:51:36PM +0100, Christian Cotte-Barrot wrote:
> Matthew Wilcox wrote:
> > _what_ bad return from memcpy?! memcpy returns the pointer that was
> > passed to it. What are you going to check for?
> >
>
> Simply, bad return is whatever is not equal to the dest pointer:
> if ((memcpy(rptr, ch->rxptr + tail, dataToRead)) != rptr)
> ...
No. You don't get it. memcpy returns the pointer that was passed in.
Nothing more, nothing less. There is no `error return'. There is no
`what if'. memcpy is defined to succeed. Look:
"
7.21.2.1 The memcpy function
Synopsis
#include <string.h>
void *memcpy(void * restrict s1, const void * restrict s2, size_t n);
Description
The memcpy function copies n characters from the object pointed to by s2
into the object pointed to by s1. If copying takes place between objects
that overlap, the behavior is undefined.
Returns
The memcpy function returns the value of s1.
"
Testing the result of memcpy is bad C. Don't ever do it.
--
Revolutions do not require corporate support.
prev parent reply other threads:[~2002-11-15 14:17 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-11-14 9:01 [Linux-ia64] Re: memcpy failure Christian Cotte-Barrot
2002-11-14 12:23 ` Matthew Wilcox
2002-11-14 15:10 ` Don Dugger
2002-11-14 15:47 ` [Linux-ia64] " Chen, Kenneth W
2002-11-14 15:53 ` [Linux-ia64] " Chen, Kenneth W
2002-11-14 16:09 ` Mario Smarduch
2002-11-14 16:12 ` Matthew Wilcox
2002-11-14 19:21 ` Mario Smarduch
2002-11-14 19:37 ` David Mosberger
2002-11-14 20:32 ` Chen, Kenneth W
2002-11-15 10:32 ` Christian Cotte-Barrot
2002-11-15 13:04 ` Matthew Wilcox
2002-11-15 13:51 ` Christian Cotte-Barrot
2002-11-15 14:17 ` Matthew Wilcox [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=marc-linux-ia64-105590709805452@msgid-missing \
--to=willy@debian.org \
--cc=linux-ia64@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox