* builds/unix/ftsystem.c (FT_New_Stream): added a fix to ensure that

all FreeType input streams are closed in child processes of a "fork"
        on Unix systems. This is important to avoid (potential) access
        control issues..
BRANCH-2-1-5
David Turner 23 years ago
parent 1c2ef2b948
commit 52ca40b522
  1. 8
      ChangeLog
  2. 13
      builds/unix/ftsystem.c

@ -1,3 +1,11 @@
2002-01-03 Keith Packard <keithp@keithp.com>
* builds/unix/ftsystem.c (FT_New_Stream): added a fix to ensure that
all FreeType input streams are closed in child processes of a "fork"
on Unix systems. This is important to avoid (potential) access
control issues..
2002-01-03 David Turner <david@freetype.org>
* src/type1/t1objs.c (T1_Face_Init): fixed a bug that crashed the

@ -223,6 +223,19 @@
return FT_Err_Cannot_Open_Resource;
}
/* here, we ensure that a "fork" will _not_ duplicate */
/* our opened input streams on Unix. This is critical */
/* since it would avoid some (possible) access control */
/* issues and clean up the kernel file table a bit. */
/* */
#ifdef F_SETFD
# ifdef FD_CLOEXEC
ret = fcntl ( file, F_SETFD, FD_CLOEXEC);
# else
ret = fcntl ( file, F_SETFD, 1);
# endif /* FD_CLOEXEC */
#endif /* F_SETFD */
if ( fstat( file, &stat_buf ) < 0 )
{
FT_ERROR(( "FT_New_Stream:" ));

Loading…
Cancel
Save