GNU bug report logs - #28092
26.0.50; archive-int-to-mode check S_ISUID, S_ISGID bits in reverse order

Previous Next

Package: emacs;

Reported by: Tino Calancha <tino.calancha <at> gmail.com>

Date: Tue, 15 Aug 2017 02:32:01 UTC

Severity: normal

Tags: patch

Found in version 26.0.50

Done: Tino Calancha <tino.calancha <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Tino Calancha <tino.calancha <at> gmail.com>
Subject: bug#28092: closed (Re: bug#28092: 26.0.50; archive-int-to-mode
 check S_ISUID, S_ISGID bits in reverse order)
Date: Tue, 15 Aug 2017 06:48:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#28092: 26.0.50; archive-int-to-mode check S_ISUID, S_ISGID bits in reverse order

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 28092 <at> debbugs.gnu.org.

-- 
28092: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=28092
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Tino Calancha <tino.calancha <at> gmail.com>
To: 28092-done <at> debbugs.gnu.org
Subject: Re: bug#28092: 26.0.50;
 archive-int-to-mode check S_ISUID, S_ISGID bits in reverse order
Date: Tue, 15 Aug 2017 15:47:40 +0900
Tino Calancha <tino.calancha <at> gmail.com> writes:

> Tags: patch
>
> emacs -Q -l arc-mode
>
> (archive-int-to-mode 2048)
> => "------S---" ; It should be: "---S------"
> (archive-int-to-mode 1024)
> => "---S------" ; It should be: "------S---"
Fixed in master branch as commit
66b75d3f2002459edccd241af57c63b380b192d3
(archive-int-to-mode: Fix order of testing S_ISUID, S_ISGID bits)

[Message part 3 (message/rfc822, inline)]
From: Tino Calancha <tino.calancha <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 26.0.50;
 archive-int-to-mode check S_ISUID, S_ISGID bits in reverse order
Date: Tue, 15 Aug 2017 11:31:25 +0900
Tags: patch

emacs -Q -l arc-mode

(archive-int-to-mode 2048)
=> "------S---" ; It should be: "---S------"
(archive-int-to-mode 1024)
=> "---S------" ; It should be: "------S---"

--8<-----------------------------cut here---------------start------------->8---
commit 03b830d7ad819118c8b9d4e30cf6da638a579c88
Author: Tino Calancha <tino.calancha <at> gmail.com>
Date:   Tue Aug 15 11:15:10 2017 +0900

    archive-int-to-mode: Fix order of testing S_ISUID, S_ISGID bits
    
    * lisp/arc-mode.el (archive-int-to-mode):
    Swap order of 2048 with 1024 tests (Bug#28092).
    * test/lisp/arc-mode-tests.el (arc-mode-test-archive-int-to-mode):
    Update test.

diff --git a/lisp/arc-mode.el b/lisp/arc-mode.el
index bd7548b704..938c143b8e 100644
--- a/lisp/arc-mode.el
+++ b/lisp/arc-mode.el
@@ -559,13 +559,13 @@ archive-int-to-mode
     (if (zerop (logand   256 mode)) ?- ?r)
     (if (zerop (logand   128 mode)) ?- ?w)
     (if (zerop (logand    64 mode))
-	(if (zerop (logand  1024 mode)) ?- ?S)
-      (if (zerop (logand  1024 mode)) ?x ?s))
+	(if (zerop (logand  2048 mode)) ?- ?S)
+      (if (zerop (logand  2048 mode)) ?x ?s))
     (if (zerop (logand    32 mode)) ?- ?r)
     (if (zerop (logand    16 mode)) ?- ?w)
     (if (zerop (logand     8 mode))
-	(if (zerop (logand  2048 mode)) ?- ?S)
-      (if (zerop (logand  2048 mode)) ?x ?s))
+	(if (zerop (logand  1024 mode)) ?- ?S)
+      (if (zerop (logand  1024 mode)) ?x ?s))
     (if (zerop (logand     4 mode)) ?- ?r)
     (if (zerop (logand     2 mode)) ?- ?w)
     (if (zerop (logand     1 mode)) ?- ?x)))
diff --git a/test/lisp/arc-mode-tests.el b/test/lisp/arc-mode-tests.el
index 04047bab62..c2501e921a 100644
--- a/test/lisp/arc-mode-tests.el
+++ b/test/lisp/arc-mode-tests.el
@@ -27,7 +27,7 @@
                      (cons 420 "-rw-r--r--")
                      (cons 292 "-r--r--r--")
                      (cons 512 "----------")
-                     (cons 1024 "---S------"))))
+                     (cons 1024 "------S---"))))
     (dolist (x alist)
       (should (equal (cdr x) (archive-int-to-mode (car x)))))))
 
--8<-----------------------------cut here---------------end--------------->8---
In GNU Emacs 26.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.11)
 of 2017-08-15
Repository revision: e88bbd22c5ffb1d6008c0c7e18a36043b0f397dd



This bug report was last modified 7 years and 282 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.