#752549 dirdiff failed to start if directory is without read permissions

Package:
dirdiff
Source:
dirdiff
Description:
Display and merge changes between two directory trees
Submitter:
Sergey Alyoshin
Date:
2014-06-24 15:18:07 UTC
Severity:
normal
#752549#5
Date:
2014-06-24 15:14:08 UTC
From:
To:
$ ls -l 1 2
1:
total 8
drwxr-xr-x 2 asv asv 40 Jun 24 19:06 A/
-rw-r--r-- 1 asv asv  2 Jun 24 19:04 a
-rw-r--r-- 1 asv asv  2 Jun 24 19:04 b

2:
total 8
d-wx--x--x 2 asv asv 80 Jun 24 19:06 A/   # NOTE: no read permissions
-rw-r--r-- 1 asv asv  2 Jun 24 19:04 a
--w------- 1 asv asv  2 Jun 24 19:04 b


$ dirdiff  1 2

Error in startup script: couldn't read directory "2/A/": permission denied
    while executing
"glob -nocomplain $d/$sd* $d/$sd.*"
    (procedure "addfiles" line 39)
    invoked from within
"addfiles $sd"
    (procedure "diffsin" line 3)
    invoked from within
"diffsin $f [expr $maxdepth-1]"
    (procedure "diffsin" line 17)
    invoked from within
"diffsin {} $maxdepth"
    (procedure "canvdiffs" line 13)
    invoked from within
"canvdiffs"
    (procedure "go" line 13)
    invoked from within
"go"
    invoked from within
"if [info exists doit] {go}"
    (file "/usr/bin/dirdiff" line 4743)
X Error of failed request:  RenderBadPicture (invalid Picture parameter)
  Major opcode of failed request:  149 (RENDER)
  Minor opcode of failed request:  7 (RenderFreePicture)
  Picture id in failed request: 0x4e0000f
  Serial number of failed request:  1107
  Current serial number in output stream:  1168