Provide a config option to turn off debugger prompt.

The debugger prompt string depends on user/machine specific configuration settings, which makes its inclusion in expected test output problematic. There is already an option in (the user controlled) ~/.hphpd.hdf to turn off the prompt. Now there is an option in normal config files to do the same.
Esse commit está contido em:
Herman Venter
2013-06-07 10:40:41 -07:00
commit de sgolemon
commit 894b0addf2
9 arquivos alterados com 184 adições e 195 exclusões
+2
Ver Arquivo
@@ -438,6 +438,7 @@ std::string RuntimeOption::SandboxLogsRoot;
bool RuntimeOption::EnableDebugger = false;
bool RuntimeOption::EnableDebuggerColor = true;
bool RuntimeOption::EnableDebuggerPrompt = true;
bool RuntimeOption::EnableDebuggerServer = false;
bool RuntimeOption::EnableDebuggerUsageLog = false;
int RuntimeOption::DebuggerServerPort = 8089;
@@ -1177,6 +1178,7 @@ void RuntimeOption::Load(Hdf &config, StringVec *overwrites /* = NULL */,
Hdf debugger = eval["Debugger"];
EnableDebugger = debugger["EnableDebugger"].getBool();
EnableDebuggerColor = debugger["EnableDebuggerColor"].getBool(true);
EnableDebuggerPrompt = debugger["EnableDebuggerPrompt"].getBool(true);
EnableDebuggerServer = debugger["EnableDebuggerServer"].getBool();
EnableDebuggerUsageLog = debugger["EnableDebuggerUsageLog"].getBool();
DebuggerServerPort = debugger["Port"].getUInt16(8089);
+1
Ver Arquivo
@@ -494,6 +494,7 @@ public:
// Debugger options
static bool EnableDebugger;
static bool EnableDebuggerColor;
static bool EnableDebuggerPrompt;
static bool EnableDebuggerServer;
static bool EnableDebuggerUsageLog;
static int DebuggerServerPort;
+5 -5
Ver Arquivo
@@ -578,7 +578,7 @@ bool DebuggerClient::reconnect() {
std::string DebuggerClient::getPrompt() {
TRACE(2, "DebuggerClient::getPrompt\n");
if (NoPrompt) {
if (NoPrompt || !RuntimeOption::EnableDebuggerPrompt) {
return "";
}
string *name = &m_machine->m_name;
@@ -622,19 +622,19 @@ void DebuggerClient::init(const DebuggerClientOptions &options) {
if (!options.cmds.empty()) {
RuntimeOption::EnableDebuggerColor = false;
RuntimeOption::EnableDebuggerPrompt = false;
s_use_utf8 = false;
NoPrompt = true;
}
if (options.apiMode) {
RuntimeOption::EnableDebuggerColor = false;
NoPrompt = true;
RuntimeOption::EnableDebuggerPrompt = false;
m_outputBuf.clear();
}
if (UseColor && RuntimeOption::EnableDebuggerColor) Debugger::SetTextColors();
if (!NoPrompt) {
if (!NoPrompt && RuntimeOption::EnableDebuggerPrompt) {
info("Welcome to HipHop Debugger!");
info("Type \"help\" or \"?\" for a complete list of commands.\n");
}
@@ -1087,7 +1087,7 @@ bool DebuggerClient::console() {
return false;
}
}
} else if (!NoPrompt) {
} else if (!NoPrompt && RuntimeOption::EnableDebuggerPrompt) {
print("%s%s", getPrompt().c_str(), line);
}
if (*line && !m_macroPlaying) {
+1
Ver Arquivo
@@ -6,6 +6,7 @@ Eval {
Debugger {
EnableDebugger = true
EnableDebuggerColor = false
EnableDebuggerPrompt = false
}
}
+58 -61
Ver Arquivo
@@ -1,29 +1,26 @@
Welcome to HipHop Debugger!
Type "help" or "?" for a complete list of commands.
Program %s/flow.php loaded. Type '[r]un' or '[c]ontinue' to go.
%Shphpd> break cls::pub()
%Sbreak cls::pub()
Breakpoint 1 set upon entering cls::pub()
hphpd> run
run
flow_t.php loaded
Program %s/flow.php exited normally.
hphpd> @test(1)
@test(1)
test 1
Breakpoint 1 reached at cls::pub() on line 12 of %s/flow.php
11 public function pub($x) {
12 error_log("in pub:".$x);
13 $this->pri($x);
hphpd> next
next
in pub:1
Break at cls::pub() on line 13 of %s/flow.php
12 error_log("in pub:".$x);
13 $this->pri($x);
14 error_log("out pub:".$x);
hphpd> variable
variable
$x = 1
hphpd> next
next
in pri:1
foo:1
out pri:1
@@ -32,27 +29,27 @@ Break at cls::pub() on line 14 of %s/flow.php
14 error_log("out pub:".$x);
15 }
hphpd> next
next
out pub:1
Break at test() on line 62 of %s/flow.php
61 $obj = new cls();
62 $obj->pub($x);
63 error_log("test done ".$x);
hphpd> next
next
Break at test() on line 63 of %s/flow.php
62 $obj->pub($x);
63 error_log("test done ".$x);
64 }
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> continue
continue
test done 1
hphpd> break flow.php:18
break flow.php:18
Breakpoint 1 set on line 18 of flow.php
hphpd> @test(2)
@test(2)
test 2
in pub:2
in pri:2
@@ -61,58 +58,58 @@ Breakpoint 1 reached at cls::pri() on line 18 of %s/flow.php
18 $y = $x + 3; $z = $x * 5;
19 foo($y, $z);
hphpd> step
step
Break at cls::pri() on line 19 of %s/flow.php
18 $y = $x + 3; $z = $x * 5;
19 foo($y, $z);
20 if ($x == 3) {
hphpd> variable
variable
$x = 2
$y = 5
$z = 10
hphpd> step
step
Break at foo() on line 6 of %s/flow.php
5 function foo($a, $b) {
6 $c = $b - $a;
7 error_log("foo:".$c);
hphpd> variable
variable
$a = 5
$b = 10
hphpd> step
step
Break at foo() on line 7 of %s/flow.php
6 $c = $b - $a;
7 error_log("foo:".$c);
8 }
hphpd> variable
variable
$a = 5
$b = 10
$c = 5
hphpd> next
next
foo:5
Break at cls::pri() on line 19 of %s/flow.php
18 $y = $x + 3; $z = $x * 5;
19 foo($y, $z);
20 if ($x == 3) {
hphpd> step
step
Break at cls::pri() on line 20 of %s/flow.php
19 foo($y, $z);
20 if ($x == 3) {
21 hphpd_break();
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> continue
continue
out pri:2
out pub:2
test done 2
hphpd> break flow.php:6
break flow.php:6
Breakpoint 1 set on line 6 of flow.php
hphpd> @test(3)
@test(3)
test 3
in pub:3
in pri:3
@@ -121,23 +118,23 @@ Breakpoint 1 reached at foo() on line 6 of %s/flow.php
6 $c = $b - $a;
7 error_log("foo:".$c);
hphpd> continue
continue
foo:9
Break at cls::pri() on line 21 of %s/flow.php
20 if ($x == 3) {
21 hphpd_break();
22 }
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> continue
continue
out pri:3
out pub:3
test done 3
hphpd> break flow.php:7
break flow.php:7
Breakpoint 1 set on line 7 of flow.php
hphpd> @test(4)
@test(4)
test 4
in pub:4
in pri:4
@@ -146,47 +143,47 @@ Breakpoint 1 reached at foo() on line 7 of %s/flow.php
7 error_log("foo:".$c);
8 }
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> out
out
foo:13
Break at cls::pri() on line 19 of %s/flow.php
18 $y = $x + 3; $z = $x * 5;
19 foo($y, $z);
20 if ($x == 3) {
hphpd> step
step
Break at cls::pri() on line 20 of %s/flow.php
19 foo($y, $z);
20 if ($x == 3) {
21 hphpd_break();
hphpd> out
out
out pri:4
Break at cls::pub() on line 13 of %s/flow.php
12 error_log("in pub:".$x);
13 $this->pri($x);
14 error_log("out pub:".$x);
hphpd> next
next
Break at cls::pub() on line 14 of %s/flow.php
13 $this->pri($x);
14 error_log("out pub:".$x);
15 }
hphpd> out
out
out pub:4
Break at test() on line 62 of %s/flow.php
61 $obj = new cls();
62 $obj->pub($x);
63 error_log("test done ".$x);
hphpd> continue
continue
test done 4
hphpd> break flow.php:46
break flow.php:46
Breakpoint 1 set on line 46 of flow.php
hphpd> test(5)
test(5)
test 5
in pub:5
in pri:5
@@ -196,9 +193,9 @@ Breakpoint 1 reached at thrower() on line 46 of %s/flow.php
46 throw new Exception();
47 }
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> next
next
Break at baz() on line 50 of %s/flow.php
49 function baz($a) {
50 try {
@@ -208,26 +205,26 @@ Break at baz() on line 50 of %s/flow.php
54 }
55
hphpd> next
next
Break at baz() on line 53 of %s/flow.php
52 } catch (Exception $e) {
53 $a = 0;
54 }
hphpd> out
out
Break at cls::pri() on line 27 of %s/flow.php
26 if ($x == 5 || $x == 6) {
27 baz($x);
28 }
hphpd> continue
continue
out pri:5
out pub:5
test done 5
hphpd> break flow.php:46
break flow.php:46
Breakpoint 1 set on line 46 of flow.php
hphpd> test(6)
test(6)
test 6
in pub:6
in pri:6
@@ -237,9 +234,9 @@ Breakpoint 1 reached at thrower() on line 46 of %s/flow.php
46 throw new Exception();
47 }
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> out
out
Break at baz() on line 50 of %s/flow.php
49 function baz($a) {
50 try {
@@ -249,26 +246,26 @@ Break at baz() on line 50 of %s/flow.php
54 }
55
hphpd> next
next
Break at baz() on line 53 of %s/flow.php
52 } catch (Exception $e) {
53 $a = 0;
54 }
hphpd> out
out
Break at cls::pri() on line 27 of %s/flow.php
26 if ($x == 5 || $x == 6) {
27 baz($x);
28 }
hphpd> continue
continue
out pri:6
out pub:6
test done 6
hphpd> break flow.php:7
break flow.php:7
Breakpoint 1 set on line 7 of flow.php
hphpd> @test(7)
@test(7)
test 7
in pub:7
in pri:7
@@ -277,11 +274,11 @@ Breakpoint 1 reached at foo() on line 7 of %s/flow.php
7 error_log("foo:".$c);
8 }
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> break flow.php:62
break flow.php:62
Breakpoint 1 set on line 62 of flow.php
hphpd> continue
continue
foo:25
out pri:7
out pub:7
@@ -290,9 +287,9 @@ Breakpoint 1 reached at test() on line 62 of %s/flow.php
62 $obj->pub($x);
63 error_log("test done ".$x);
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> continue
continue
test done 7
hphpd> quit
quit
+37 -40
Ver Arquivo
@@ -1,69 +1,66 @@
Welcome to HipHop Debugger!
Type "help" or "?" for a complete list of commands.
Program %s/flow2.php loaded. Type '[r]un' or '[c]ontinue' to go.
%Shphpd> run
%Srun
flow2.php done
Program %s/flow2.php exited normally.
hphpd> break test()
break test()
Breakpoint 1 set upon entering test()
hphpd> @test(1)
@test(1)
Breakpoint 1 reached at test() on line 53 of %s/flow2.php
52 function test($a) {
53 foo($a);
54 }
hphpd> step
step
Break at foo() on line 36 of %s/flow2.php
35 function foo($a) {
36 $c = new C1(5);
37
hphpd> next
next
Constructor
Break at foo() on line 38 of %s/flow2.php
37
38 $i = 0;
39 foreach (genFoo($a) as $x) {
hphpd> next
next
Break at foo() on line 39 of %s/flow2.php
38 $i = 0;
39 foreach (genFoo($a) as $x) {
40 $i++;
hphpd> next
next
Break at foo() on line 40 of %s/flow2.php
39 foreach (genFoo($a) as $x) {
40 $i++;
41 var_dump($x);
hphpd> next
next
Break at foo() on line 41 of %s/flow2.php
40 $i++;
41 var_dump($x);
42 }
hphpd> next
next
Break at foo() on line 40 of %s/flow2.php
39 foreach (genFoo($a) as $x) {
40 $i++;
41 var_dump($x);
hphpd> next
next
Break at foo() on line 41 of %s/flow2.php
40 $i++;
41 var_dump($x);
42 }
hphpd> next
next
Finished in genFoo
Break at foo() on line 44 of %s/flow2.php
43
44 $c = new C1(6); // Runs a destructor
45 $d = $c;
hphpd> next
next
Constructor
Destructor
Break at foo() on line 45 of %s/flow2.php
@@ -71,26 +68,26 @@ Break at foo() on line 45 of %s/flow2.php
45 $d = $c;
46 $e = new C1(7);
hphpd> next
next
Break at foo() on line 46 of %s/flow2.php
45 $d = $c;
46 $e = new C1(7);
47 $c = null;
hphpd> next
next
Constructor
Break at foo() on line 47 of %s/flow2.php
46 $e = new C1(7);
47 $c = null;
48
hphpd> next
next
Break at foo() on line 49 of %s/flow2.php
48
49 var_dump($d);
50 } // Ret runs two destructors
hphpd> next
next
Destructor
Destructor
Break at test() on line 53 of %s/flow2.php
@@ -98,9 +95,9 @@ Break at test() on line 53 of %s/flow2.php
53 foo($a);
54 }
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> continue
continue
int(8)
int(1)
object(C1)#2 (1) {
@@ -108,38 +105,38 @@ object(C1)#2 (1) {
int(0)
}
hphpd> break flow2.php:10
break flow2.php:10
Breakpoint 1 set on line 10 of flow2.php
hphpd> break flow2.php:12
break flow2.php:12
Breakpoint 2 set on line 12 of flow2.php
hphpd> @test(2)
@test(2)
Constructor
Breakpoint 1 reached at %s() on line 10 of %s/flow2.php
Breakpoint 1 reached at %d_%d() on line 10 of %s/flow2.php
9 function genFoo($a) {
10 $a = bar($a);
11 $z = yield $a+5;
hphpd> out
out
Break at foo() on line 40 of %s/flow2.php
39 foreach (genFoo($a) as $x) {
40 $i++;
41 var_dump($x);
hphpd> continue
Breakpoint 2 reached at %s() on line 12 of %s/flow2.php
continue
Breakpoint 2 reached at %d_%d() on line 12 of %s/flow2.php
11 $z = yield $a+5;
12 yield $z+1;
13 error_log('Finished in genFoo');
hphpd> out
out
Break at foo() on line 40 of %s/flow2.php
39 foreach (genFoo($a) as $x) {
40 $i++;
41 var_dump($x);
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> continue
continue
Finished in genFoo
Constructor
Destructor
@@ -153,9 +150,9 @@ object(C1)#3 (1) {
int(0)
}
hphpd> break flow2.php:26
break flow2.php:26
Breakpoint 2 set on line 26 of flow2.php
hphpd> @test(3)
@test(3)
Constructor
Finished in genFoo
Constructor
@@ -164,37 +161,37 @@ Breakpoint 2 reached at C1::__destruct() on line 26 of %s/flow2.php
26 error_log('Destructor');
27 }
hphpd> out
out
Destructor
Break at foo() on line 44 of %s/flow2.php
43
44 $c = new C1(6); // Runs a destructor
45 $d = $c;
hphpd> continue
continue
Constructor
Breakpoint 2 reached at C1::__destruct() on line 26 of %s/flow2.php
25 public function __destruct() {
26 error_log('Destructor');
27 }
hphpd> out
out
Destructor
Breakpoint 2 reached at C1::__destruct() on line 26 of %s/flow2.php
25 public function __destruct() {
26 error_log('Destructor');
27 }
hphpd> out
out
Destructor
Break at test() on line 53 of %s/flow2.php
52 function test($a) {
53 foo($a);
54 }
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> continue
continue
int(10)
int(1)
object(C1)#4 (1) {
@@ -202,4 +199,4 @@ object(C1)#4 (1) {
int(0)
}
hphpd> quit
quit
+39 -42
Ver Arquivo
@@ -1,60 +1,57 @@
Welcome to HipHop Debugger!
Type "help" or "?" for a complete list of commands.
Program %s/flow_gen.php loaded. Type '[r]un' or '[c]ontinue' to go.
%Shphpd> run
%Srun
flow_gen.php loaded
Program %s/flow_gen.php exited normally.
hphpd> break flow_gen.php:12
break flow_gen.php:12
Breakpoint 1 set on line 12 of flow_gen.php
hphpd> @test(1)
Breakpoint 1 reached at %s() on line 12 of %s/flow_gen.php
@test(1)
Breakpoint 1 reached at %d_%d() on line 12 of %s/flow_gen.php
11 function genFoo($a) {
12 $a = bar($a);
13 $z = yield $a+5;
hphpd> next
Break at %s() on line 13 of %s/flow_gen.php
next
Break at %d_%d() on line 13 of %s/flow_gen.php
12 $a = bar($a);
13 $z = yield $a+5;
14 yield $z+1;
hphpd> next
next
Break at foo() on line 20 of %s/flow_gen.php
19 $gen1 = genFoo($a);
20 $gen1->next();
21 while ($gen1->valid()) {
hphpd> next
next
Break at foo() on line 21 of %s/flow_gen.php
20 $gen1->next();
21 while ($gen1->valid()) {
22 $val = $gen1->current();
hphpd> next
next
Break at foo() on line 22 of %s/flow_gen.php
21 while ($gen1->valid()) {
22 $val = $gen1->current();
23 var_dump($val);
hphpd> next
next
Break at foo() on line 23 of %s/flow_gen.php
22 $val = $gen1->current();
23 var_dump($val);
24 $gen1->send($a);
hphpd> next
next
Break at foo() on line 24 of %s/flow_gen.php
23 var_dump($val);
24 $gen1->send($a);
25 }
hphpd> step
step
Break at Continuation::send()
hphpd> step
step
Break at Continuation::send()
hphpd> step
Break at %s() on line 11 of %s/flow_gen.php
step
Break at %d_%d() on line 11 of %s/flow_gen.php
10
11 function genFoo($a) {
12 $a = bar($a);
@@ -64,54 +61,54 @@ Break at %s() on line 11 of %s/flow_gen.php
16 }
17
hphpd> step
Break at %s() on line 13 of %s/flow_gen.php
step
Break at %d_%d() on line 13 of %s/flow_gen.php
12 $a = bar($a);
13 $z = yield $a+5;
14 yield $z+1;
hphpd> next
Break at %s() on line 14 of %s/flow_gen.php
next
Break at %d_%d() on line 14 of %s/flow_gen.php
13 $z = yield $a+5;
14 yield $z+1;
15 error_log('Finished in genFoo');
hphpd> next
next
Break at foo() on line 24 of %s/flow_gen.php
23 var_dump($val);
24 $gen1->send($a);
25 }
hphpd> next
next
Break at foo() on line 21 of %s/flow_gen.php
20 $gen1->next();
21 while ($gen1->valid()) {
22 $val = $gen1->current();
hphpd> next
next
Break at foo() on line 22 of %s/flow_gen.php
21 while ($gen1->valid()) {
22 $val = $gen1->current();
23 var_dump($val);
hphpd> next
next
Break at foo() on line 23 of %s/flow_gen.php
22 $val = $gen1->current();
23 var_dump($val);
24 $gen1->send($a);
hphpd> next
next
Break at foo() on line 24 of %s/flow_gen.php
23 var_dump($val);
24 $gen1->send($a);
25 }
hphpd> step
step
Break at Continuation::send()
hphpd> step
step
Break at Continuation::send()
hphpd> step
Break at %s() on line 11 of %s/flow_gen.php
step
Break at %d_%d() on line 11 of %s/flow_gen.php
10
11 function genFoo($a) {
12 $a = bar($a);
@@ -121,21 +118,21 @@ Break at %s() on line 11 of %s/flow_gen.php
16 }
17
hphpd> step
Break at %s() on line 14 of %s/flow_gen.php
step
Break at %d_%d() on line 14 of %s/flow_gen.php
13 $z = yield $a+5;
14 yield $z+1;
15 error_log('Finished in genFoo');
hphpd> next
Break at %s() on line 15 of %s/flow_gen.php
next
Break at %d_%d() on line 15 of %s/flow_gen.php
14 yield $z+1;
15 error_log('Finished in genFoo');
16 }
hphpd> next
next
Finished in genFoo
Break at %s() on line 11 of %s/flow_gen.php
Break at %d_%d() on line 11 of %s/flow_gen.php
10
11 function genFoo($a) {
12 $a = bar($a);
@@ -145,22 +142,22 @@ Break at %s() on line 11 of %s/flow_gen.php
16 }
17
hphpd> next
next
Break at foo() on line 24 of %s/flow_gen.php
23 var_dump($val);
24 $gen1->send($a);
25 }
hphpd> next
next
Break at foo() on line 21 of %s/flow_gen.php
20 $gen1->next();
21 while ($gen1->valid()) {
22 $val = $gen1->current();
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> continue
continue
int(8)
int(2)
hphpd> quit
quit
@@ -1,10 +1,7 @@
Welcome to HipHop Debugger!
Type "help" or "?" for a complete list of commands.
Program %s/flow_multistep.php loaded. Type '[r]un' or '[c]ontinue' to go.
hphpd> break flow_multistep.php:58
%Sbreak flow_multistep.php:58
Breakpoint 1 set on line 58 of flow_multistep.php
hphpd> run
run
C1 oh hai
C2 oh hai
C2 oh hai
@@ -21,13 +18,13 @@ Breakpoint 1 reached at main() on line 58 of %s/flow_multistep.php
58 var_dump(a(42));
59 }
hphpd> step 8
step 8
Break at main() on line 58 of %s/flow_multistep.php
57 var_dump($d);
58 var_dump(a(42));
59 }
hphpd> continue
continue
int(46)
C1 destructor!
C2 destructor
@@ -35,7 +32,7 @@ C1 oh hai
C1 destructor!
C2 destructor done
Program %s/flow_multistep.php exited normally.
hphpd> run
run
C1 oh hai
C2 oh hai
C2 oh hai
@@ -52,19 +49,19 @@ Breakpoint 1 reached at main() on line 58 of %s/flow_multistep.php
58 var_dump(a(42));
59 }
hphpd> step 4
step 4
Break at d() on line 17 of %s/flow_multistep.php
16 function d($a) {
17 return $a + 1;
18 }
hphpd> step 4
step 4
Break at main() on line 58 of %s/flow_multistep.php
57 var_dump($d);
58 var_dump(a(42));
59 }
hphpd> continue
continue
int(46)
C1 destructor!
C2 destructor
@@ -72,7 +69,7 @@ C1 oh hai
C1 destructor!
C2 destructor done
Program %s/flow_multistep.php exited normally.
hphpd> run
run
C1 oh hai
C2 oh hai
C2 oh hai
@@ -89,19 +86,19 @@ Breakpoint 1 reached at main() on line 58 of %s/flow_multistep.php
58 var_dump(a(42));
59 }
hphpd> step 4
step 4
Break at d() on line 17 of %s/flow_multistep.php
16 function d($a) {
17 return $a + 1;
18 }
hphpd> next 4
next 4
Break at main() on line 58 of %s/flow_multistep.php
57 var_dump($d);
58 var_dump(a(42));
59 }
hphpd> continue
continue
int(46)
C1 destructor!
C2 destructor
@@ -109,7 +106,7 @@ C1 oh hai
C1 destructor!
C2 destructor done
Program %s/flow_multistep.php exited normally.
hphpd> run
run
C1 oh hai
C2 oh hai
C2 oh hai
@@ -126,19 +123,19 @@ Breakpoint 1 reached at main() on line 58 of %s/flow_multistep.php
58 var_dump(a(42));
59 }
hphpd> step 4
step 4
Break at d() on line 17 of %s/flow_multistep.php
16 function d($a) {
17 return $a + 1;
18 }
hphpd> out 4
out 4
Break at main() on line 58 of %s/flow_multistep.php
57 var_dump($d);
58 var_dump(a(42));
59 }
hphpd> continue
continue
int(46)
C1 destructor!
C2 destructor
@@ -146,11 +143,11 @@ C1 oh hai
C1 destructor!
C2 destructor done
Program %s/flow_multistep.php exited normally.
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> break flow_multistep.php:54
break flow_multistep.php:54
Breakpoint 1 set on line 54 of flow_multistep.php
hphpd> run
run
C1 oh hai
C2 oh hai
Breakpoint 1 reached at main() on line 54 of %s/flow_multistep.php
@@ -158,9 +155,9 @@ Breakpoint 1 reached at main() on line 54 of %s/flow_multistep.php
54 $c2 = new C2(6);
55 $d = $c1;
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> step 10
step 10
C2 oh hai
C2 destructor
C1 oh hai
@@ -169,7 +166,7 @@ Break at C1::__destruct() on line 30 of %s/flow_multistep.php
30 echo "C1 destructor!\n";
31 }
hphpd> out 2
out 2
C1 destructor!
C2 destructor done
Break at main() on line 54 of %s/flow_multistep.php
@@ -177,7 +174,7 @@ Break at main() on line 54 of %s/flow_multistep.php
54 $c2 = new C2(6);
55 $d = $c1;
hphpd> out
out
object(C1)#9 (1) {
["x":"C1":private]=>
int(0)
@@ -193,11 +190,11 @@ Break on line 61 of %s/flow_multistep.php
61 main();
62
hphpd> continue
continue
Program %s/flow_multistep.php exited normally.
hphpd> break flow_multistep.php:54
break flow_multistep.php:54
Breakpoint 1 set on line 54 of flow_multistep.php
hphpd> run
run
C1 oh hai
C2 oh hai
Breakpoint 1 reached at main() on line 54 of %s/flow_multistep.php
@@ -205,9 +202,9 @@ Breakpoint 1 reached at main() on line 54 of %s/flow_multistep.php
54 $c2 = new C2(6);
55 $d = $c1;
hphpd> break clear all
break clear all
All breakpoints are cleared.
hphpd> step 10
step 10
C2 oh hai
C2 destructor
C1 oh hai
@@ -216,7 +213,7 @@ Break at C1::__destruct() on line 30 of %s/flow_multistep.php
30 echo "C1 destructor!\n";
31 }
hphpd> next 3
next 3
C1 destructor!
C2 destructor done
Break at main() on line 54 of %s/flow_multistep.php
@@ -224,13 +221,13 @@ Break at main() on line 54 of %s/flow_multistep.php
54 $c2 = new C2(6);
55 $d = $c1;
hphpd> next
next
Break at main() on line 55 of %s/flow_multistep.php
54 $c2 = new C2(6);
55 $d = $c1;
56 $c1 = null;
hphpd> continue
continue
object(C1)#11 (1) {
["x":"C1":private]=>
int(0)
@@ -242,4 +239,4 @@ C1 oh hai
C1 destructor!
C2 destructor done
Program %s/flow_multistep.php exited normally.
hphpd> quit
quit
+9 -12
Ver Arquivo
@@ -1,32 +1,29 @@
Welcome to HipHop Debugger!
Type "help" or "?" for a complete list of commands.
Program %sprintThis.php loaded. Type '[r]un' or '[c]ontinue' to go.
%Shphpd> break printThis.php:5
Program %s/printThis.php loaded. Type '[r]un' or '[c]ontinue' to go.
%Sbreak printThis.php:5
Breakpoint 1 set on line 5 of printThis.php
hphpd> run
Breakpoint 1 reached at Foo::method() on line 5 of %sprintThis.php
run
Breakpoint 1 reached at Foo::method() on line 5 of %s/printThis.php
4 function method() {
5 $other = $this;
6 }
hphpd> print $this
print $this
Foo Object
(
[prop] => "Hello\n"
)
hphpd> continue
Breakpoint 1 reached at Foo::method() on line 5 of %sprintThis.php
continue
Breakpoint 1 reached at Foo::method() on line 5 of %s/printThis.php
4 function method() {
5 $other = $this;
6 }
hphpd> print $this
print $this
Foo Object
(
[prop] => "Hello\n"
[prop2] => "\tThere"
)
hphpd> quit
quit