mirror of
https://github.com/git/git.git
synced 2024-11-23 09:56:28 +08:00
git-p4: show Perforce error to the user
During "git p4 clone" if p4 process returns an error from the server, it will store the message in the 'err' variable. Then it will send a text command "die-now" to git-fast-import. However, git-fast-import raises an exception: "fatal: Unsupported command: die-now" and err is never displayed. This patch ensures that err is shown to the end user. Signed-off-by: Fahad Alrashed <fahad@keylock.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
786a3e4b8d
commit
55702c543e
24
git-p4.py
24
git-p4.py
@ -3253,17 +3253,19 @@ class P4Sync(Command, P4UserMap):
|
||||
if self.stream_have_file_info:
|
||||
if "depotFile" in self.stream_file:
|
||||
f = self.stream_file["depotFile"]
|
||||
# force a failure in fast-import, else an empty
|
||||
# commit will be made
|
||||
self.gitStream.write("\n")
|
||||
self.gitStream.write("die-now\n")
|
||||
self.gitStream.close()
|
||||
# ignore errors, but make sure it exits first
|
||||
self.importProcess.wait()
|
||||
if f:
|
||||
die("Error from p4 print for %s: %s" % (f, err))
|
||||
else:
|
||||
die("Error from p4 print: %s" % err)
|
||||
try:
|
||||
# force a failure in fast-import, else an empty
|
||||
# commit will be made
|
||||
self.gitStream.write("\n")
|
||||
self.gitStream.write("die-now\n")
|
||||
self.gitStream.close()
|
||||
# ignore errors, but make sure it exits first
|
||||
self.importProcess.wait()
|
||||
finally:
|
||||
if f:
|
||||
die("Error from p4 print for %s: %s" % (f, err))
|
||||
else:
|
||||
die("Error from p4 print: %s" % err)
|
||||
|
||||
if 'depotFile' in marshalled and self.stream_have_file_info:
|
||||
# start of a new file - output the old one first
|
||||
|
Loading…
Reference in New Issue
Block a user