From patchwork Tue Feb 27 10:25:38 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Xavier Roirand X-Patchwork-Id: 26103 Received: (qmail 65993 invoked by alias); 27 Feb 2018 10:25:46 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 65983 invoked by uid 89); 27 Feb 2018 10:25:46 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.9 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_NEUTRAL autolearn=ham version=3.3.2 spammy=5796, oso, OSO X-HELO: mail-wm0-f52.google.com Received: from mail-wm0-f52.google.com (HELO mail-wm0-f52.google.com) (74.125.82.52) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 27 Feb 2018 10:25:45 +0000 Received: by mail-wm0-f52.google.com with SMTP id z9so22615324wmb.3 for ; Tue, 27 Feb 2018 02:25:44 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=KVCyutxuGBqCUkvz+sUYu8Xa0u7PxB7FL+A/Fnwb4jg=; b=K+ynoMT9C1kwfqbhP8CfszNprv4UnGweCkp7RVIk2eLOC3rkTBx3mNBag8ynJ6L1Rr rvFtp2Oj6JfU247NqDg9MygLvTpEnRkpxjsQBwNMwivgr2X5kU26gwHM8+M3Q9tuBWgI ZcmtkV4O7e1n7Bq+ghWr4aFwkeubAAZ6/5lWS3S0a2O32K/70vXfmpjel4I2y7yldc1e R8TnjrI9Ke+iSNQkh90Pc0HEg42vEY4+Mnuwn4cGA+1hZRRrlee7X0LJFqle69UIDig6 LGDmFJ2XBDipX/IE6YyYw6lKp3SkCfEnVlHMyO/TBZPrnXXnFKfl4A8zN4rwI1T42tbQ oW9g== X-Gm-Message-State: APf1xPBmPGhMPnG2zb/sKmNL+yobu94g8abH/y1aS5s/BI/3VcsSmNhU M38/U45u88vt85VpmG6diHCWbOFM X-Google-Smtp-Source: AH8x225wFvMWNPMiHPVr7fCC+fLl+t9zBgMgYkR4p9yDlOS8YLHGVfk8zYX/6NCyewssFWZ2IxjNjg== X-Received: by 10.28.48.85 with SMTP id w82mr10674256wmw.95.1519727142467; Tue, 27 Feb 2018 02:25:42 -0800 (PST) Received: from adacore.com ([46.18.100.10]) by smtp.gmail.com with ESMTPSA id c56sm21423422wrc.82.2018.02.27.02.25.40 (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 27 Feb 2018 02:25:41 -0800 (PST) Received: by adacore.com (sSMTP sendmail emulation); Tue, 27 Feb 2018 11:25:39 +0100 From: Xavier Roirand To: gdb-patches@sourceware.org Cc: brobecker@adacore.com, Xavier Roirand , tgingold@free.fr Subject: [RFA] machoread.c: avoid a crash on OSO without symbols. Date: Tue, 27 Feb 2018 11:25:38 +0100 Message-Id: <1519727138-3039-1-git-send-email-roirand@adacore.com> X-IsSubscribed: yes gdb/ChangeLog (Tristan Gingold ) * machoread.c (macho_add_oso_symfile): Handle weird case of OSO without symbols. --- gdb/ChangeLog | 6 ++++++ gdb/machoread.c | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b9a9bcd..83b5073 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2018-02-27 Tristan Gingold + + Pushed by Xavier Roirand + * machoread.c (macho_add_oso_symfile): Handle weird case + of OSO without symbols. + 2018-02-26 Maciej W. Rozycki * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD diff --git a/gdb/machoread.c b/gdb/machoread.c index b270675..b00ef13 100644 --- a/gdb/machoread.c +++ b/gdb/machoread.c @@ -579,6 +579,11 @@ macho_add_oso_symfile (oso_el *oso, const gdb_bfd_ref_ptr &abfd, { struct macho_sym_hash_entry *ent; + /* Nothing to do if there is no symbol (and avoid a crash + while creating an empty hash table). */ + if (oso->nbr_syms == 0) + continue; + ent = (struct macho_sym_hash_entry *) bfd_hash_lookup (&table, sym->name, FALSE, FALSE); if (ent != NULL)