From faba5e7488674a8a26896cde6d6cf31b6920c060 Mon Sep 17 00:00:00 2001 From: Peter Wemm Date: Sun, 4 Apr 1999 06:01:09 +0000 Subject: [PATCH] If somebody does an execv("foo", NULL) (which theoretically is an error), avoid crashing inside rtld (since it's easy) since everything else handles it. Of course, if the target program checks argv[], it'll fall over. Reviewed by: jdp --- libexec/rtld-elf/rtld.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libexec/rtld-elf/rtld.c b/libexec/rtld-elf/rtld.c index 11b22148fb7..837819c3256 100644 --- a/libexec/rtld-elf/rtld.c +++ b/libexec/rtld-elf/rtld.c @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: rtld.c,v 1.14 1999/03/24 23:37:35 nate Exp $ + * $Id: rtld.c,v 1.15 1999/03/24 23:47:29 nate Exp $ */ /* @@ -260,7 +260,7 @@ _rtld(Elf_Addr *sp, func_ptr_type *exit_proc, Obj_Entry **objp) obj_main = digest_phdr(phdr, phnum, entry); } - obj_main->path = xstrdup(argv[0]); + obj_main->path = xstrdup(argv[0] ? argv[0] : "(null)"); obj_main->mainprog = true; digest_dynamic(obj_main);