--- fileutils-4.0.35/src/dd.c.trunc Wed Jan 10 16:37:04 2001 +++ fileutils-4.0.35/src/dd.c Wed Jan 10 16:39:12 2001 @@ -1102,6 +1102,7 @@ { int i; int exit_status; + struct stat stat_buf; program_name = argv[0]; setlocale (LC_ALL, ""); @@ -1149,6 +1150,10 @@ && open_fd (STDOUT_FILENO, output_file, O_WRONLY | opts, perms) < 0) error (1, errno, _("opening %s"), quote (output_file)); + if(fstat(STDOUT_FILENO, &stat_buf)<0) + error(1, errno, "%s", output_file); + if(!S_ISREG(stat_buf.st_mode)) + conversions_mask |= C_NOTRUNC; #if HAVE_FTRUNCATE if (seek_records != 0 && !(conversions_mask & C_NOTRUNC)) {