blob: b1b43fa754a709cba25d6a1a4aff969234e79285 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
namespace mozilla {
namespace _ipdltest {
intr protocol PTestHangs {
both:
intr StackFrame();
parent:
async Nonce();
child:
async Start();
intr Hang();
async __delete__();
state START:
send Start goto RACE;
state RACE:
recv Nonce goto RACE1;
call StackFrame goto RACE2;
state RACE1:
call StackFrame goto FRAME2;
state RACE2:
recv Nonce goto FRAME2;
// So as to test unwinding the RPC stack
state FRAME2: answer StackFrame goto FRAME3;
state FRAME3: call StackFrame goto FRAME4;
state FRAME4: answer StackFrame goto HANG;
state HANG: call Hang goto DEATH;
state DEATH:
send __delete__;
};
} // namespace _ipdltest
} // namespace mozilla
|