919 |
return bug_number; |
return bug_number; |
920 |
} |
} |
921 |
|
|
922 |
/* Submit the PR whose contents are referred to by FP. */ |
/* Submit the PR whose contents are referred to by FP. |
923 |
|
* Return the new PR number if it's a new PR, or return the PR number of |
924 |
|
* the PR which was appended to if it's an existing PR. */ |
925 |
int |
int |
926 |
submit_pr (const DatabaseInfo database, FILE *fp, ErrorDesc *err) |
submit_pr (const DatabaseInfo database, FILE *fp, ErrorDesc *err) |
927 |
{ |
{ |
928 |
int result; |
int result, retval; |
929 |
PR *pr = allocPR (database); |
PR *pr = allocPR (database); |
930 |
|
|
931 |
result = (read_header (pr, fp) >= 0); |
result = (read_header (pr, fp) >= 0); |
947 |
} |
} |
948 |
else |
else |
949 |
{ |
{ |
950 |
if (append_report (fp, pr, prID, err) != 0) |
retval = append_report (fp, pr, prID, err); |
951 |
{ |
result = (retval == 0) ? atoi (prID) : 0; |
|
result = 0; |
|
|
} |
|
952 |
free_pr (pr); |
free_pr (pr); |
953 |
} |
} |
954 |
free (prID); |
free (prID); |
956 |
else |
else |
957 |
{ |
{ |
958 |
read_pr (pr, fp, 0); |
read_pr (pr, fp, 0); |
959 |
if (createNewPRFile (pr, createCategoryDirs (database), err) < 0) |
retval = createNewPRFile (pr, createCategoryDirs (database), err); |
960 |
{ |
result = (retval < 0) ? 0 : retval; |
|
result = 0; |
|
|
} |
|
961 |
} |
} |
962 |
} |
} |
963 |
else |
else |