From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id jOEZMT3k1WpMfjAAWB0awg (envelope-from ) for ; Mon, 19 Oct 2026 05:34:53 -0400 Authentication-Results: simark.ca; dkim=pass (1024-bit key; unprotected) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=j62hfRnV; dkim=pass header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=6Rz7ZE3l; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=JyMA7gm5; dkim=neutral header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=iUJcBehu; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 9E51C1E047; Mon, 19 Oct 2026 05:34:53 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,RCVD_IN_VALIDITY_CERTIFIED_BLOCKED, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED autolearn=ham autolearn_force=no version=4.0.1 Received: from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 3B2961E047 for ; Mon, 19 Oct 2026 05:34:52 -0400 (EDT) Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id A87384BA23CB for ; Mon, 19 Oct 2026 09:34:51 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A87384BA23CB Authentication-Results: sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=j62hfRnV; dkim=pass header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=6Rz7ZE3l; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=JyMA7gm5; dkim=neutral header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=iUJcBehu Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.223.130]) by sourceware.org (Postfix) with ESMTPS id B49924BA2E1E for ; Mon, 19 Oct 2026 09:34:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B49924BA2E1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=suse.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org B49924BA2E1E Authentication-Results: sourceware.org; arc=none smtp.remote-ip=195.135.223.130 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1792402467; cv=none; b=UYcxXWxK8FNph7PDPrTU2Le2BzuJV3rOsA+7ZXhN4deEreS62yUpU1g8F4QGETAYT8XlLsSwuDTIrK19E/XYy40N5Zw+nvebGXbEsTIZaxJe5nQc95do3PIwZUBFdiw9mPhj/zXbns9C/WTXqBOdG4aR08uB6XTxUl8WEQ3Yz9o= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1792402467; c=relaxed/simple; bh=0IqZktvUm22/Eml7AKQ9YlKWS3cNbgMNApk0/qiTjxI=; h=DKIM-Signature:DKIM-Signature:DKIM-Signature:DKIM-Signature:From: To:Subject:Date:Message-ID:MIME-Version; b=lHhnT3OfmzrPgqpiefxWyWCJDx9Llqd0KdMEap3HUM8An3ahsLR+PALIDD2Yi6AQmHtWVnjqheYvLxH+0qZGGJz5J3Id2gHPx/0w+QCb/D7yk1jrcnMXK1VCcyvYFpK+zvAbwR5hWS/tGcveu/Eco10jP3xysJklmdZV+7hamSg= ARC-Authentication-Results: i=1; sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=j62hfRnV; dkim=pass header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=6Rz7ZE3l; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.a=rsa-sha256 header.s=susede2_rsa header.b=JyMA7gm5; dkim=neutral header.d=suse.de header.i=@suse.de header.a=ed25519-sha256 header.s=susede2_ed25519 header.b=iUJcBehu DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B49924BA2E1E Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104:10:150:64:97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 663FA21C31 for ; Mon, 19 Oct 2026 09:34:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1792402465; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=q6M4xOScGUtWvl3Ffb0uusDZ/r/+cys62+T6aIC9VBY=; b=j62hfRnVCC3BTUB9QH1sD9bAERPEVNtM5VsPL7XiI0fUpXpW/fh4LpsFwbWgkI/Yj3Glqw O8NN77cLO5Tu2OmnVZ4wBfiwkudQCL2qJxVBsnomuaSCV/3jwicRRfSbS2U6QVxORnoWf6 nfogx049lGcT3Wq7umTdtx9movEJbIE= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1792402465; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=q6M4xOScGUtWvl3Ffb0uusDZ/r/+cys62+T6aIC9VBY=; b=6Rz7ZE3llrbWTzR6hqg7P1CEJ6VV9nkZcYpUMRlCJhz/77EtoGKZTgp+txRnl1CLCGtYYL 9u3toeYMjwL2DvCQ== Authentication-Results: smtp-out1.suse.de; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=JyMA7gm5; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=iUJcBehu DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1792402464; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=q6M4xOScGUtWvl3Ffb0uusDZ/r/+cys62+T6aIC9VBY=; b=JyMA7gm5LAj4mZrR0KR2fBM1YYhGNYXKw1bRWSqyHlqFbPmdz752bK2nJ6FfmGauUUdZwB 6FEdLrNg2PgSX1aIav5nSmV3vIw8yRid0QOQdmM1Tgk8zmKJLuLRPjABflYy3b40S58uxG l3Hs+pL5F1IKbIa4W01tfhqVAmuCG3M= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1792402464; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=q6M4xOScGUtWvl3Ffb0uusDZ/r/+cys62+T6aIC9VBY=; b=iUJcBehu/J9qjwzdMHgos3BRssr6i1kr5mntzoURqIkzOB6V18e5iAPr793W2n9yApJeLH 73CCQSYggSQXL+AA== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 1175C134B3 for ; Mon, 19 Oct 2026 09:34:24 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id 7N/wKh/k1WrKJwAAD6G6ig (envelope-from ) for ; Mon, 19 Oct 2026 09:34:23 +0000 From: Tom de Vries To: gdb-patches@sourceware.org Subject: [pushed] [gdb/testsuite] Make sure cleanup is run in section_get Date: Mon, 19 Oct 2026 11:34:18 +0200 Message-ID: <20261019093418.353429-1-tdevries@suse.de> X-Mailer: git-send-email 2.51.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspamd1.dmz-prg2.suse.org X-Rspamd-Queue-Id: 663FA21C31 X-Rspamd-Action: no action X-Spamd-Result: default: False [-3.01 / 50.00]; BAYES_HAM(-3.00)[100.00%]; MID_CONTAINS_FROM(1.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; R_MISSING_CHARSET(0.50)[]; R_DKIM_ALLOW(-0.20)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; NEURAL_HAM_SHORT(-0.20)[-1.000]; MIME_GOOD(-0.10)[text/plain]; MX_GOOD(-0.01)[]; ARC_NA(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; TO_MATCH_ENVRCPT_ALL(0.00)[]; RBL_SPAMHAUS_BLOCKED_OPENRESOLVER(0.00)[2a07:de40:b281:104:10:150:64:97:from]; DKIM_TRACE(0.00)[suse.de:+]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; RCVD_TLS_ALL(0.00)[]; TO_DN_NONE(0.00)[]; RECEIVED_SPAMHAUS_BLOCKED_OPENRESOLVER(0.00)[2a07:de40:b281:106:10:150:64:167:received]; PREVIOUSLY_DELIVERED(0.00)[gdb-patches@sourceware.org]; RCVD_VIA_SMTP_AUTH(0.00)[]; DBL_BLOCKED_OPENRESOLVER(0.00)[imap1.dmz-prg2.suse.org:helo, imap1.dmz-prg2.suse.org:rdns, suse.de:dkim, gdb.tui:url] X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org I ran test-case gdb.tui/debuginfod-query.exp and noticed a left-over temporary file section_get.tmp. The problem is that the cleanup in proc section_get is not reached if the early exit is triggered. Fix this using try finally. While we're at it, drop unused declaration of global subdir. Tested on x86_64-linux. --- gdb/testsuite/lib/gdb.exp | 52 ++++++++++++++++++++------------------- 1 file changed, 27 insertions(+), 25 deletions(-) diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp index dca32750fbf..dba696cc130 100644 --- a/gdb/testsuite/lib/gdb.exp +++ b/gdb/testsuite/lib/gdb.exp @@ -12305,32 +12305,34 @@ gdb_caching_proc root_user {} { # for sections ".interp" or ".gnu_debuglink". proc section_get {exec section} { - global subdir - set tmp [standard_output_file section_get.tmp] - set objcopy_program [gdb_find_objcopy] - - set command "exec $objcopy_program -O binary --set-section-flags $section=A --change-section-address $section=0 -j $section $exec $tmp" - verbose -log "command is $command" - set result [catch {{*}$command} output] - verbose -log "result is $result" - verbose -log "output is $output" - if {$result == 1} { - return "" - } - set fi [open $tmp] - fconfigure $fi -translation binary - set data [read $fi] - close $fi - file delete $tmp - # .interp has size $len + 1 but .gnu_debuglink contains garbage after \000. - set len [string first \000 $data] - if {$len < 0} { - verbose -log "section $section not found" - return "" + try { + set tmp [standard_output_file section_get.tmp] + set objcopy_program [gdb_find_objcopy] + set command "exec $objcopy_program -O binary --set-section-flags $section=A --change-section-address $section=0 -j $section $exec $tmp" + verbose -log "command is $command" + set result [catch {{*}$command} output] + verbose -log "result is $result" + verbose -log "output is $output" + if {$result == 1} { + return "" + } + set fi [open $tmp] + fconfigure $fi -translation binary + set data [read $fi] + close $fi + # .interp has size $len + 1 but .gnu_debuglink contains garbage after + # \000. + set len [string first \000 $data] + if {$len < 0} { + verbose -log "section $section not found" + return "" + } + set retval [string range $data 0 [expr {$len - 1}]] + verbose -log "section $section is <$retval>" + return $retval + } finally { + file delete $tmp } - set retval [string range $data 0 [expr {$len - 1}]] - verbose -log "section $section is <$retval>" - return $retval } # Return true if we expect the build-id from FILENAME to be included base-commit: b3874756227969658bd718e7ba2b152538bbb60c -- 2.51.0