diff options
Diffstat (limited to 'src/internal/slibtool_symlink_impl.c')
-rw-r--r-- | src/internal/slibtool_symlink_impl.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/internal/slibtool_symlink_impl.c b/src/internal/slibtool_symlink_impl.c index 0b1daa0..bb67623 100644 --- a/src/internal/slibtool_symlink_impl.c +++ b/src/internal/slibtool_symlink_impl.c @@ -28,6 +28,7 @@ int slbt_create_symlink( int fdcwd; int fliteral; int fwrapper; + int fdevnull; char ** oargv; const char * slash; char * ln[5]; @@ -41,9 +42,13 @@ int slbt_create_symlink( /* options */ fliteral = (options & SLBT_SYMLINK_LITERAL); fwrapper = (options & SLBT_SYMLINK_WRAPPER); + fdevnull = (options & SLBT_SYMLINK_DEVNULL); /* symlink is a placeholder? */ - if ((dctx->cctx->drvflags & SLBT_DEV_NULL_FLAGS) + if (fliteral && fdevnull) { + slash = target; + + } else if ((dctx->cctx->drvflags & SLBT_DEV_NULL_FLAGS) && !strcmp(target,"/dev/null")) { slash = target; suffix = ".disabled"; |