svn commit: r249811 - head/bin/dd
Konstantin Belousov
kib at FreeBSD.org
Tue Apr 23 16:08:25 UTC 2013
Author: kib
Date: Tue Apr 23 16:08:24 2013
New Revision: 249811
URL: http://svnweb.freebsd.org/changeset/base/249811
Log:
Literally follow POSIX:
If the bs= expr operand is specified and no conversions other than sync,
noerror, or notrunc are requested, the data returned from each input
block shall be written as a separate output block.
In particular, when both bs=size and conv=sparce were specified, the
resulted file was fully filled, instead of sparce.
PR: standards/177742
Submitted by: Matthew Rezny <mrezny at hexaneinc.com>
MFC after: 2 weeks
Modified:
head/bin/dd/dd.c
Modified: head/bin/dd/dd.c
==============================================================================
--- head/bin/dd/dd.c Tue Apr 23 14:36:44 2013 (r249810)
+++ head/bin/dd/dd.c Tue Apr 23 16:08:24 2013 (r249811)
@@ -358,7 +358,7 @@ dd_in(void)
* than noerror, notrunc or sync are specified, the block
* is output without buffering as it is read.
*/
- if (ddflags & C_BS) {
+ if ((ddflags & ~(C_NOERROR | C_NOTRUNC | C_SYNC)) == C_BS) {
out.dbcnt = in.dbcnt;
dd_out(1);
in.dbcnt = 0;
More information about the svn-src-all
mailing list