Diff for /embedaddon/libiconv/srclib/binary-io.h between versions 1.1.1.2 and 1.1.1.3

version 1.1.1.2, 2012/05/29 09:29:43 version 1.1.1.3, 2021/03/17 13:38:46
Line 1 Line 1
 /* Binary mode I/O.  /* Binary mode I/O.
   Copyright (C) 2001, 2003, 2005, 2008-2011 Free Software Foundation, Inc.   Copyright (C) 2001, 2003, 2005, 2008-2019 Free Software Foundation, Inc.
   
    This program is free software: you can redistribute it and/or modify     This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by     it under the terms of the GNU General Public License as published by
Line 12 Line 12
    GNU General Public License for more details.     GNU General Public License for more details.
   
    You should have received a copy of the GNU General Public License     You should have received a copy of the GNU General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
   
 #ifndef _BINARY_H  #ifndef _BINARY_H
 #define _BINARY_H  #define _BINARY_H
Line 25 Line 25
    so we include it here first.  */     so we include it here first.  */
 #include <stdio.h>  #include <stdio.h>
   
/* SET_BINARY (fd);#ifndef _GL_INLINE_HEADER_BEGIN
   changes the file descriptor fd to perform binary I/O.  */ #error "Please include config.h first."
 #endif
 _GL_INLINE_HEADER_BEGIN
 #ifndef BINARY_IO_INLINE
 # define BINARY_IO_INLINE _GL_INLINE
 #endif
 
 #if O_BINARY  #if O_BINARY
 # if defined __EMX__ || defined __DJGPP__ || defined __CYGWIN__  # if defined __EMX__ || defined __DJGPP__ || defined __CYGWIN__
 #  include <io.h> /* declares setmode() */  #  include <io.h> /* declares setmode() */
   #  define __gl_setmode setmode
 # else  # else
#  define setmode _setmode#  define __gl_setmode _setmode
 #  undef fileno  #  undef fileno
 #  define fileno _fileno  #  define fileno _fileno
 # endif  # endif
 # ifdef __DJGPP__  
 #  include <unistd.h> /* declares isatty() */  
    /* Avoid putting stdin/stdout in binary mode if it is connected to  
       the console, because that would make it impossible for the user  
       to interrupt the program through Ctrl-C or Ctrl-Break.  */  
 #  define SET_BINARY(fd) ((void) (!isatty (fd) ? (setmode (fd, O_BINARY), 0) : 0))  
 # else  
 #  define SET_BINARY(fd) ((void) setmode (fd, O_BINARY))  
 # endif  
 #else  #else
  /* On reasonable systems, binary I/O is the default.  */  /* On reasonable systems, binary I/O is the only choice.  */
# define SET_BINARY(fd) /* do nothing */ ((void) 0)  /* Use a function rather than a macro, to avoid gcc warnings
      "warning: statement with no effect".  */
 BINARY_IO_INLINE int
 __gl_setmode (int fd _GL_UNUSED, int mode _GL_UNUSED)
 {
   return O_BINARY;
 }
 #endif  #endif
   
   #if defined __DJGPP__ || defined __EMX__
   extern int __gl_setmode_check (int);
   #else
   BINARY_IO_INLINE int
   __gl_setmode_check (int fd _GL_UNUSED) { return 0; }
   #endif
   
   /* Set FD's mode to MODE, which should be either O_TEXT or O_BINARY.
      Return the old mode if successful, -1 (setting errno) on failure.
      Ordinarily this function would be called 'setmode', since that is
      its name on MS-Windows, but it is called 'set_binary_mode' here
      to avoid colliding with a BSD function of another name.  */
   
   BINARY_IO_INLINE int
   set_binary_mode (int fd, int mode)
   {
     int r = __gl_setmode_check (fd);
     return r != 0 ? r : __gl_setmode (fd, mode);
   }
   
   /* This macro is obsolescent.  */
   #define SET_BINARY(fd) ((void) set_binary_mode (fd, O_BINARY))
   
   _GL_INLINE_HEADER_END
   
 #endif /* _BINARY_H */  #endif /* _BINARY_H */

Removed from v.1.1.1.2  
changed lines
  Added in v.1.1.1.3


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>