From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS22989 208.118.235.0/24 X-Spam-Status: No, score=-4.2 required=3.0 tests=AWL,BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI, SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id 1328E1F770 for ; Wed, 2 Jan 2019 10:42:29 +0000 (UTC) Received: from localhost ([127.0.0.1]:43524 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gedym-00077m-8B for e@80x24.org; Wed, 02 Jan 2019 05:42:28 -0500 Received: from eggs.gnu.org ([208.118.235.92]:39765) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gedyk-00077U-3j for dtas-all@nongnu.org; Wed, 02 Jan 2019 05:42:26 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gedyg-0001cY-A2 for dtas-all@nongnu.org; Wed, 02 Jan 2019 05:42:26 -0500 Received: from dcvr.yhbt.net ([64.71.152.64]:52816) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gedyg-0001bO-4Z for dtas-all@nongnu.org; Wed, 02 Jan 2019 05:42:22 -0500 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id CC1C91F775 for ; Wed, 2 Jan 2019 10:42:18 +0000 (UTC) From: Eric Wong To: dtas-all@nongnu.org Subject: [PATCH] dtas/watchable: check SystemCallError Date: Wed, 2 Jan 2019 10:42:18 +0000 Message-Id: <20190102104218.13350-1-e@80x24.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 64.71.152.64 X-BeenThere: dtas-all@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: duct tape audio suite List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dtas-all-bounces+e=80x24.org@nongnu.org Sender: "dtas-all" Sometimes files become unreadable. --- lib/dtas/watchable.rb | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/dtas/watchable.rb b/lib/dtas/watchable.rb index acaf0d5..7d2bac4 100644 --- a/lib/dtas/watchable.rb +++ b/lib/dtas/watchable.rb @@ -37,9 +37,13 @@ def watch_files(paths, blk) @dir2wd =3D {} Array(paths).each do |path| watchdir, watchbase =3D File.split(File.expand_path(path)) - wd =3D @dir2wd[watchdir] ||=3D add_watch(watchdir, FLAGS) - m =3D @watches[wd] ||=3D {} - m[watchbase] =3D true + begin + wd =3D @dir2wd[watchdir] ||=3D add_watch(watchdir, FLAGS) + m =3D @watches[wd] ||=3D {} + m[watchbase] =3D true + rescue SystemCallError =3D> e + warn "#{watchdir.dump}: #{e.message} (#{e.class})" + end end end end --=20 EW