--- Begin Message ---
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 <address@hidden>
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
--- End Message ---
--- Begin Message ---
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 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) |
Tino Calancha <address@hidden> 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)
--- End Message ---