cmds.posix.copy: Allow missing mode option #134
1 changed files with 2 additions and 1 deletions
cmds.posix.copy: Allow missing mode option
All checks were successful
CI / Packaging - Kali Linux (pull_request) Successful in 5m11s
CI / Packaging - OpenSUSE Tumbleweed (pull_request) Successful in 4m45s
CI / Packaging test (pull_request) Successful in 0s
CI / Packaging - Kali Linux (push) Successful in 5m0s
CI / Packaging - OpenSUSE Tumbleweed (push) Successful in 4m55s
CI / Packaging test (push) Successful in 0s
All checks were successful
CI / Packaging - Kali Linux (pull_request) Successful in 5m11s
CI / Packaging - OpenSUSE Tumbleweed (pull_request) Successful in 4m45s
CI / Packaging test (pull_request) Successful in 0s
CI / Packaging - Kali Linux (push) Successful in 5m0s
CI / Packaging - OpenSUSE Tumbleweed (push) Successful in 4m55s
CI / Packaging test (push) Successful in 0s
The -m option of posix copy is optional, and its argparse default is None,
but _run() converts it unconditionally and crashes:
mode = int(args.mode, 0)
so every copy without -m died with
TypeError: int() can't convert non-string with explicit base
before the copy even started. Convert the mode only when it is given, and
pass None otherwise, which copy() already treats as "no mode change".
Signed-off-by: Jan Lindemann <jan@janware.com>
Assisted-by: unsloth/Qwen3.8-27B-GGUF:Q4_K_M with pi.dev v0.99.2
commit
9eec04f0f3
|
|
@ -58,6 +58,7 @@ class CmdCopy(Cmd): # export
|
||||||
__expand(args.dst),
|
__expand(args.dst),
|
||||||
owner = args.owner,
|
owner = args.owner,
|
||||||
group = args.group,
|
group = args.group,
|
||||||
mode = int(args.mode, 0),
|
# -- A mode is given as a string, if at all
|
||||||
|
mode = int(args.mode, 0) if args.mode is not None else None,
|
||||||
recursive = args.recursive,
|
recursive = args.recursive,
|
||||||
)
|
)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue