mirror of
https://salsa.debian.org/srivasta/make-dfsg.git
synced 2024-12-29 08:09:03 +00:00
[SV #39035] Compare OUT to the beginning of the OUT var/func, not IN.
This commit is contained in:
parent
d2eaed1f0a
commit
bf60bbd67a
4 changed files with 34 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2013-05-26 Paul Smith <psmith@gnu.org>
|
||||||
|
|
||||||
|
* job.c (new_job): Compare OUT to the beginning of the OUT
|
||||||
|
var/function, not IN. Fixes Savannah bug #39035.
|
||||||
|
|
||||||
2013-05-22 Paul Smith <psmith@gnu.org>
|
2013-05-22 Paul Smith <psmith@gnu.org>
|
||||||
|
|
||||||
* main.c (switches[]): Order switches so simple flags all come first.
|
* main.c (switches[]): Order switches so simple flags all come first.
|
||||||
|
|
4
job.c
4
job.c
|
@ -2036,10 +2036,12 @@ new_job (struct file *file)
|
||||||
{
|
{
|
||||||
char openparen = *ref;
|
char openparen = *ref;
|
||||||
char closeparen = openparen == '(' ? ')' : '}';
|
char closeparen = openparen == '(' ? ')' : '}';
|
||||||
|
char *outref;
|
||||||
int count;
|
int count;
|
||||||
char *p;
|
char *p;
|
||||||
|
|
||||||
*out++ = *in++; /* Copy OPENPAREN. */
|
*out++ = *in++; /* Copy OPENPAREN. */
|
||||||
|
outref = out;
|
||||||
/* IN now points past the opening paren or brace.
|
/* IN now points past the opening paren or brace.
|
||||||
Count parens or braces until it is matched. */
|
Count parens or braces until it is matched. */
|
||||||
count = 0;
|
count = 0;
|
||||||
|
@ -2072,7 +2074,7 @@ new_job (struct file *file)
|
||||||
|
|
||||||
/* Discard any preceding whitespace that has
|
/* Discard any preceding whitespace that has
|
||||||
already been written to the output. */
|
already been written to the output. */
|
||||||
while (out > ref
|
while (out > outref
|
||||||
&& isblank ((unsigned char)out[-1]))
|
&& isblank ((unsigned char)out[-1]))
|
||||||
--out;
|
--out;
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
2013-05-26 Paul Smith <psmith@gnu.org>
|
||||||
|
|
||||||
|
* scripts/misc/bs-nl: Test for Savannah bug #39035.
|
||||||
|
|
||||||
2013-05-22 Paul Smith <psmith@gnu.org>
|
2013-05-22 Paul Smith <psmith@gnu.org>
|
||||||
|
|
||||||
* scripts/options/dash-n: Fix results after MAKEFLAGS fixes.
|
* scripts/options/dash-n: Fix results after MAKEFLAGS fixes.
|
||||||
|
|
|
@ -99,4 +99,26 @@ var = he\
|
||||||
var:;@echo '|$(var)|'!,
|
var:;@echo '|$(var)|'!,
|
||||||
'', "|he llo|");
|
'', "|he llo|");
|
||||||
|
|
||||||
|
# Savannah #39035: handle whitespace in call
|
||||||
|
run_make_test(q!
|
||||||
|
f = echo $(1)
|
||||||
|
t:; @$(call f,"a \
|
||||||
|
b"); \
|
||||||
|
$(call f,"a \
|
||||||
|
b")
|
||||||
|
!,
|
||||||
|
'', "a b\na b\n");
|
||||||
|
|
||||||
|
# Savannah #38945: handle backslash CRLF
|
||||||
|
# We need our own makefile so we can set binmode
|
||||||
|
my $m1 = get_tmpfile();
|
||||||
|
open(MAKEFILE, "> $m1");
|
||||||
|
binmode(MAKEFILE);
|
||||||
|
print MAKEFILE "FOO = foo \\\r\nbar\nall: ; \@echo \$(FOO)\n";
|
||||||
|
close(MAKEFILE);
|
||||||
|
|
||||||
|
run_make_with_options($m1, '', get_logfile());
|
||||||
|
compare_output("foo bar\n", get_logfile(1));
|
||||||
|
|
||||||
|
|
||||||
1;
|
1;
|
||||||
|
|
Loading…
Reference in a new issue