diff --git a/platform/platform-resources/src/launcher.py b/platform/platform-resources/src/launcher.py index 57ecceda01e1..e60cfb3b0f8f 100644 --- a/platform/platform-resources/src/launcher.py +++ b/platform/platform-resources/src/launcher.py @@ -22,16 +22,27 @@ for i, arg in enumerate(sys.argv[1:]): ' {0} diff ' + ' {0} merge [base] ').format(sys.argv[0])) exit(0) - elif ':' in arg: - file_path, line_number = arg.rsplit(':', 1) - if line_number.isdigit(): - args.append('-l') - args.append(line_number) - args.append(file_path) - else: - args.append(arg) - else: + elif arg == 'diff' and i == 0: args.append(arg) + elif arg == 'merge' and i == 0: + args.append(arg) + elif arg == '-l' or arg == '--line': + args.append(arg) + skip_next = True + elif skip_next: + args.append(arg) + skip_next = False + else: + if ':' in arg: + file_path, line_number = arg.rsplit(':', 1) + if line_number.isdigit(): + args.append('-l') + args.append(line_number) + args.append(os.path.abspath(file_path)) + else: + args.append(os.path.abspath(arg)) + else: + args.append(os.path.abspath(arg)) def launch_with_port(port):