From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: from zero.zsh.org (zero.zsh.org [IPv6:2a02:898:31:0:48:4558:7a:7368]) by inbox.vuxu.org (Postfix) with ESMTP id 2087422072 for ; Sat, 8 Jun 2024 23:13:52 +0200 (CEST) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1717881232; b=RUNoF7ozkPcaynwrbgqln8btF4iVA8nPwlmCYBgr5/K4i8f/CaoB7ntTg1AEfMsvH6V5HTbFuE vr8vZ2QkwNhZ0cv0UQZxtS8fXiJ4oWb9cWC34ifsM0XqOvuqmk/qvlqy3NiFU3Q3BvwrGgRQUx 2cmmXfyZ9HXy997P3kq10HU+3o+SOuTLRuw3M69HIsQLdC6ehm4eXJcvXhWn9oudmvjL09YYaT tF+Q1hzSTKTfgAOaPqpEB7BHyeGWqRWLXlwRwgBrWA60d+iGDLQZ9dN6coHp30Ecx7Ba4sqBjp pC/n99UEPnAf7+R9xy3cCPeivxOIHqZc25lNYaCBqd7s6g==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-ed1-f45.google.com) smtp.remote-ip=209.85.208.45; dkim=pass header.d=gmail.com header.s=20230601 header.a=rsa-sha256; dmarc=pass header.from=gmail.com; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1717881232; bh=k/waRC/N3IQ2vIH6TRMb1BIMO1Iuwlmi9wyWGlK6mzU=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Type:To:Subject:Message-ID:Date:From:MIME-Version: DKIM-Signature:DKIM-Signature; b=CyrAYE1U7XzMc3BOPjNq7r7pmFXUQ2aLFxQmjhVrsNzld9vXTRY1eXpthmGnXVYqcCz7dIDdwo VR0/V85Pk5W+trnzAvfzFV6f9icDZOFaGu4ika9k0A7AtAr7kOgvA8uhFLmDIo0IdFgeD+7qow I8BCDfbbj3lK2TDFh546MPTpT9Q2mhhRXqD/DVkWXQ6iSWfoeyRVRPdPaGV8lp9BSedcAhuUXp gSoActyDaYQvJK66B+YHh4/jP8MePZCxdz63Uhs2YA6WO36t4ccThF+fWYnQKPyq5qaGSML2rw DfORkp83Ci64BMRch9y6aSKn7KbvBJZbI/k7FnyRMDWdjg==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20210803; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:Content-Type:To:Subject:Message-ID: Date:From:MIME-Version:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References; bh=7baQxb0ODv1soIz/DqCxrRUdHhTCZXwYCuBHoSXt/aw=; b=qxfenXLeEgSFxiuBN9dLy+Vs4O g9gqhSK0BzG9NUNovF8KWzNmQ2pqeLUI4lg9ILve+SrCiz1Sq6V1hM+gkSPKh3j5SlyY4JNzmKKQ2 B7u3LM2jUQqThMYtyFi6KeamP3RNS9/guhLOMAfp9xnPh7PTpvWkme8ofI8+N4sB6d+DAEWHMDRjK fT6+vFTTvgvBUiCeWzxqPq7yEfJ3R2kgNwurvYscvf6PHrWDLvfdhHLpKNIMgMMbJPGdqjzuTyTG6 spHE/wsnVbstt1hJkLG13cqlvkcKHU7kyqnm2Kkaic01tdh9U6e57O6Guq2KCJrRMKNp0B92ZtJb/ iQn+w7PQ==; Received: by zero.zsh.org with local id 1sG3Nm-000Mz2-Te; Sat, 08 Jun 2024 21:13:50 +0000 Authentication-Results: zsh.org; iprev=pass (mail-ed1-f45.google.com) smtp.remote-ip=209.85.208.45; dkim=pass header.d=gmail.com header.s=20230601 header.a=rsa-sha256; dmarc=pass header.from=gmail.com; arc=none Received: from mail-ed1-f45.google.com ([209.85.208.45]:55724) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1sG3My-000Me1-OY; Sat, 08 Jun 2024 21:13:02 +0000 Received: by mail-ed1-f45.google.com with SMTP id 4fb4d7f45d1cf-57c681dd692so1225390a12.3 for ; Sat, 08 Jun 2024 14:13:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1717881179; x=1718485979; darn=zsh.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=7baQxb0ODv1soIz/DqCxrRUdHhTCZXwYCuBHoSXt/aw=; b=OxR0tK25Gw1HoBvH6CyfaQwqPvV7m+bhoNzhv3iBcEzjIrsKtruPU6AP3Vy1rmPlHv oKW9zz2ZeX+oR3GmiUpKCW4mmq5VLZF1/6aB3vXzl/hBuMt4fZ/K6MIVfnbhe8HgmePr JMvK+gBA0DTIxGan20JA/d2iU/TqArpN0iGj2vQaXJ/Ih3bKHh6mG1JDiR/GBddVeO7F p42N8ZtIIf5nhimg3NRUYXrv7xjTcj6aB79SRyWSrHddK18SMPLHr0Q8byRwsD46ljJM dj/Px5BChScxK5EXBvq6it2Z0ZEB8f8bE8gzpk+o2D9yqR8fcXpnK9BRCFm5zLw8qFvk Io4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717881179; x=1718485979; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=7baQxb0ODv1soIz/DqCxrRUdHhTCZXwYCuBHoSXt/aw=; b=k3iIrSSdsM4OrSB/LckBsGl/dYz1AnoAZhgUY33+LoF5ieG9+5OHU3o7qxYwQbcGFz curBDRoxIKgQu0DxYLqHVQAKuBpv6jGkU3iecdRE4NbRcbo/Q5UoKm5uvbWTtDDfiAJ/ sUiZ33XI81FSzyeVns0qK5wP7L1tOTlh45jXeGFdOo3aWw7TMqO+udgyQHfifDwwA+gn QbggzGgEremCcOAKcQOZAEGKpiGwaiLKyaKjEU8qSaAJhpfohW4VW7/+Pb9ZfkLCNSmE kiaIz4gkCN6VhQ+EKNFSMKBhAlv7mnjbRgk8bPvDLcEA+V7UjgUolscj8oX3QaKplvVo wtZw== X-Gm-Message-State: AOJu0YwAYjPRIEdSHU42ZLk/VbxQ7qw/lBy3SWyk03b1Rkzy/TfgqK56 9sfS2rLZwN4nYJLVQYjba6PbbGuSGKHfFcsMxCcz4JLKDZcJ03AFYwuLCdc+OFQFZcmlBhyC4UH nnoxrFS+7bPmZXxvWxkAqHooSkH/hhDR0 X-Google-Smtp-Source: AGHT+IGLVyjJas9K15siDZsfHrCUVuQyPwV4Vv3EP7dgQlDycspNQ497e7FNdYyFyDjIKGSTmA8WiH+YyMAn9UO9CXU= X-Received: by 2002:a50:a6d8:0:b0:57c:6a02:31d with SMTP id 4fb4d7f45d1cf-57c6a0204efmr1766391a12.33.1717881179163; Sat, 08 Jun 2024 14:12:59 -0700 (PDT) MIME-Version: 1.0 From: Philippe Altherr Date: Sat, 8 Jun 2024 23:12:47 +0200 Message-ID: Subject: [BUG] Misplaced quote in %d printf format crashes Zsh To: Zsh hackers list Content-Type: multipart/alternative; boundary="0000000000007352e2061a6761dd" X-Seq: 52948 Archived-At: X-Loop: zsh-workers@zsh.org Errors-To: zsh-workers-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-workers-request@zsh.org X-no-archive: yes List-Id: List-Help: , List-Subscribe: , List-Unsubscribe: , List-Post: List-Owner: List-Archive: --0000000000007352e2061a6761dd Content-Type: text/plain; charset="UTF-8" On macOS 14.5 running Zsh 5.9, the following command crashes Zsh: % zsh -c "printf -v result \" %5'd\"" zsh:printf:1: %5': invalid directive zsh(41890,0x7ff8450ddfc0) malloc: *** error for object 0x600002c811e0: pointer being realloc'd was not allocated zsh(41890,0x7ff8450ddfc0) malloc: *** set a breakpoint in malloc_error_break to debug zsh: abort zsh -c "printf -v result \" %5'd\"" Surprisingly, dropping the -v option, removing the space before the %, or adding an echo command after the printf command avoid the crash: % zsh -c "printf \" %5'd\"" zsh:printf:1: %5': invalid directive *%* % zsh -c "printf -v result \"%5'd\"" zsh:printf:1: %5': invalid directive % zsh -c "printf -v result \" %5'd\"; echo foo" zsh:printf:1: %5': invalid directive foo Philippe --0000000000007352e2061a6761dd Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On macOS=C2=A014.5 running Zsh 5.9, the following command = crashes Zsh:

% zsh -c "printf -v re= sult \" %5'd\""

zsh:printf:1: %5': inva= lid directive

zsh(41890,0x7ff8450ddfc0) m= alloc: *** error for object 0x600002c811e0: pointer being realloc'd was= not allocated

zsh(41890,0x7ff8450ddfc0) m= alloc: *** set a breakpoint in malloc_error_break to debug

zsh: abort=C2=A0 =C2=A0 =C2=A0 zsh -c "printf = -v result \" %5'd\""


Surprising= ly, dropping the=C2=A0-v=C2=A0opti= on, removing the space before the=C2=A0%<= /span>, or adding an=C2=A0echo=C2= =A0command after the=C2=A0printf= =C2=A0command avoid the crash:

% zsh -c "printf \&quo= t; %5'd\""=C2=A0<= /span>

zsh:printf:1: %5': inva= lid directive

=C2=A0%

% zsh -c "printf -v result \"%5'd\""<= /p>

zsh:printf:1: %5': inva= lid directive

% zsh -c "printf -v result \" %5'= d\"; echo foo"

zsh:printf:1: %5': inva= lid directive

foo


Philippe

--0000000000007352e2061a6761dd--