use path.IsAbs() instead of checking if first char is '/'
Docker-DCO-1.1-Signed-off-by: Lajos Papp <lajos.papp@sequenceiq.com> (github: lalyos)
| ... | ... |
@@ -189,6 +189,7 @@ Kimbro Staken <kstaken@kstaken.com> |
| 189 | 189 |
Kiran Gangadharan <kiran.daredevil@gmail.com> |
| 190 | 190 |
Konstantin Pelykh <kpelykh@zettaset.com> |
| 191 | 191 |
Kyle Conroy <kyle.j.conroy@gmail.com> |
| 192 |
+Lajos Papp <lajos.papp@sequenceiq.com> |
|
| 192 | 193 |
Laurie Voss <github@seldo.com> |
| 193 | 194 |
Liang-Chi Hsieh <viirya@gmail.com> |
| 194 | 195 |
Lokesh Mandvekar <lsm5@redhat.com> |
| ... | ... |
@@ -63,10 +63,9 @@ func FollowSymlinkInScope(link, root string) (string, error) {
|
| 63 | 63 |
return "", err |
| 64 | 64 |
} |
| 65 | 65 |
|
| 66 |
- switch dest[0] {
|
|
| 67 |
- case '/': |
|
| 66 |
+ if path.IsAbs(dest) {
|
|
| 68 | 67 |
prev = filepath.Join(root, dest) |
| 69 |
- case '.': |
|
| 68 |
+ } else {
|
|
| 70 | 69 |
prev, _ = filepath.Abs(prev) |
| 71 | 70 |
|
| 72 | 71 |
if prev = filepath.Clean(filepath.Join(filepath.Dir(prev), dest)); len(prev) < len(root) {
|