From 6216d33e8cc1c2d01533b3e9b97dc7009b4f3553 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Mon, 8 Mar 2010 18:19:21 +0000 Subject: Removed almost al dup calls. --- g10/plaintext.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'g10/plaintext.c') diff --git a/g10/plaintext.c b/g10/plaintext.c index d1ab92381..ee0d41357 100644 --- a/g10/plaintext.c +++ b/g10/plaintext.c @@ -1,6 +1,6 @@ /* plaintext.c - process plaintext packets * Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, - * 2006, 2009 Free Software Foundation, Inc. + * 2006, 2009, 2010 Free Software Foundation, Inc. * * This file is part of GnuPG. * @@ -651,13 +651,14 @@ hash_datafile_by_fd (gcry_md_hd_t md, gcry_md_hd_t md2, int data_fd, progress_filter_context_t *pfx = new_progress_context (); iobuf_t fp; - fp = iobuf_fdopen (data_fd, "rb"); - if (fp && is_secured_file (data_fd)) + if (is_secured_file (data_fd)) { - iobuf_close (fp); fp = NULL; errno = EPERM; } + else + fp = iobuf_fdopen_nc (data_fd, "rb"); + if (!fp) { int rc = gpg_error_from_syserror (); -- cgit v1.2.3