From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6667 invoked by alias); 30 Sep 2016 20:51:58 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 39527 Received: (qmail 23379 invoked from network); 30 Sep 2016 20:51:58 -0000 X-Qmail-Scanner-Diagnostics: from mail-pf0-f181.google.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(209.85.192.181):SA:0(0.0/5.0):. Processed in 0.134426 secs); 30 Sep 2016 20:51:58 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.1 X-Envelope-From: schaefer@brasslantern.com X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: none (ns1.primenet.com.au: domain at brasslantern.com does not designate permitted sender hosts) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20150623.gappssmtp.com; s=20150623; h=from:message-id:date:in-reply-to:comments:references:to:subject :mime-version; bh=EVPGotEWGHrLhNG+ayH93qY9WypxZc2G42iZZW0D2bc=; b=05Jt6oc7SnTYNSNcwpxRfuCQW/hE+5mUyqpUSH1nVO1WwmjQ4UxEGvfDia5+u0U3GA 1h5SXK9Hy+7dkUeFGf52vfL3JkiIdcz0dQJmSVnoXJqxBua7E4yq39jVSqsOwb4qzXWl /4WbUjMeVUfKJoAaIC6mUWhC5mLDUIBZFwerFUjc3ZHjDcK1G0pS28BOo6M+Vlklryao rwYQsrSNkkp5t4LQHtt5YX1qja3ZL4IUMCNCH58n0BJZ4RKFV3tFx97YM9w6hPPCqKsq KPP1lYqkfa/F6bIsY+w+EY03AccPM3GHUJASODJ8uwDYAGZVHF7HkBcM8vaXMhS14gql hT4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:message-id:date:in-reply-to:comments :references:to:subject:mime-version; bh=EVPGotEWGHrLhNG+ayH93qY9WypxZc2G42iZZW0D2bc=; b=deN9Lr5gdZJsbNOSiQKxGggD8NO3sPYYBEK+T8CvrjT7s0SWI+W/AAFl1x4w1BuwcG 9VRYAjoHRblJ/GSqFO0RjASzo1h3K+k3JseyJMku6pYnxm74YWnyyYrskC036NTsalgI c9/VYUoD2FgwVCzXR+fkZC97zaZQAdRHPC7QXfcfKp/N23pYiJ+/ur11ZzJipdRRGWHb eknlY4ZyWR4NaLPHiXElbcMo4nUIyUHJJLDfvHQfceHxa06GgcVjVjqPRmB0rKLv1z5L EIXNXObMGAdn1Xkts36kM/tlB3uP/P7r6drWqNS8PtMHEuNyp7zuJrUpSDXCJ03+ga59 DrFQ== X-Gm-Message-State: AA6/9RkxO9w87rm63gL1duwRXeyCuJted2zTa0D2tFgPBpfXavpYu2SeSBju8WcvUI5HMw== X-Received: by 10.98.9.25 with SMTP id e25mr14847408pfd.143.1475268265990; Fri, 30 Sep 2016 13:44:25 -0700 (PDT) From: Bart Schaefer Message-Id: <160930134446.ZM17118@torch.brasslantern.com> Date: Fri, 30 Sep 2016 13:44:46 -0700 In-Reply-To: Comments: In reply to Sebastian Gniazdowski "Re: Where to start debugging zle recursive-edit? / Ctrl-C" (Sep 30, 3:30pm) References: <160924133140.ZM29034@torch.brasslantern.com> X-Mailer: OpenZMail Classic (0.9.2 24April2005) To: Zsh hackers list Subject: Re: Where to start debugging zle recursive-edit? / Ctrl-C MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii On Sep 30, 3:30pm, Sebastian Gniazdowski wrote: } } So, the linked list doesn't have any elements, and calc_timeout() } exits with ZTM_NONE instead of ZTM_FUNC If I recall correctly how this is architected ... This must mean that you are interrupting the scheduled function itself, before it has a chance to execute "sched" and reset its timer. Because you are in recursive-edit, interrupting does not go all they way back to the top-level prompt where the precmd hook would restore the timer, so it remains unscheduled until the current zle session is done and precmd runs again. You may need to find a more aggressive place to reset the timer, such as in the zle-line-pre-redraw hook, or else create a wrapper widget for recursive-edit. Either way you'd want to examine $zle_scheduled_events to see if the timer is still pending, before scheduling it again. Or possibly you could switch from doing this with a timer scheduled function to using a "zle -F" handler function.