Bug #436
Assertions in SpiderMonkey caused by call-scene subscription handler
| Status: | Closed | Start date: | 08/27/2010 | |
|---|---|---|---|---|
| Priority: | (P2) High | Due date: | ||
| Assignee: | Christoph Hofmann | % Done: | 0% |
|
| Category: | - | |||
| Target version: | 0.9.0-alpha3 | |||
| Severity: | Major | Target: | ||
| Story points | - | |||
| Velocity based estimate | - |
Description
A subscription of the kind
<subscription event-name="callScene" handler-name="javascript">
<parameter>
<parameter name="filename">callScene-email.js</parameter>
</parameter>
</subscription>
with a script like
var sBody="";
var sSubject="(digitalSTROM) Szenenaufruf";
var fHandle=false;
switch (raisedEvent.parameter.sceneID)
{
case "0":
sBody="Szene 0 wurde ausgeloest\n";
sBody+="Raum: " + getProperty("/apartment/zones/zone" + raisedEvent.parameter.zoneID + "/name");
break;
case "5":
sBody="Szene 1 wurde ausgeloest\n";
sBody+="Raum: " + getProperty("/apartment/zones/zone" + raisedEvent.parameter.zoneID + "/name");
break;
case "40": //autostandby
sBody="Autostandby wurde ausgeloest\n";
sBody+="Raum: " + getProperty("/apartment/zones/zone" + raisedEvent.parameter.zoneID + "/name");
fHandle=true;
break;
case "41": //klingel
sBody="Die Klingel wurde ausgeloest";
fHandle=true;
break;
case "42": //Alarm
break;
case "43": //Panic
break;
}
if(fHandle)
{
var oParameter={};
oParameter.email_server="x.y.z";
oParameter.login="login";
oParameter.password="password";
oParameter.sender="sender";
oParameter.receiver="receiver";
oParameter.subject=sSubject;
oParameter.body=sBody;
var evt = event("forwardEmail",oParameter );
evt.raise();
}
genereates SpiderMonkey assertion failures and leads to dss aborts.
Related issues
Associated revisions
Reworked threading internals of JS bindings
- Each entry point into the ScriptContext needs a ScriptLock of
this context.
- Don't create JSRequests all over the place
- Use JS_SetContextThread on each entry-point (JSContextThread)
- Create local roots when allocating values
- Use reentrant-locks only with properties which need to be
reentrant.
- Fixed tests
History
Updated by Miguel Rodriguez over 1 year ago
- Status changed from New to Assigned
- Assignee set to Patrick Stählin
- Priority changed from (P3) Normal to (P2) High
- Target version set to 0.9.0-alpha3
- Severity changed from Normal to Major
Updated by Patrick Stählin over 1 year ago
This is most probably caused by a non-thread-safe build of SpiderMonkey. See #455 for details.
Updated by Patrick Stählin over 1 year ago
- Status changed from Assigned to Resolved
- Assignee changed from Patrick Stählin to Christoph Hofmann
Updated by Christoph Hofmann 9 months ago
- Status changed from Resolved to Closed