X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=blobdiff_plain;f=apps%2FMultihopOscilloscopeLqi%2FMultihopOscilloscopeC.nc;h=17edb6b78c6c8d50c5a27e19f47c04039981a63c;hb=b7e372c3aa2f1da307407397da3b032df4ac4d49;hp=fff54d7ca7bc5f9988dd17022332573ed6845f9d;hpb=0e0b232907e144f55080e6fed617db620776f4b5;p=tinyos-2.x.git diff --git a/apps/MultihopOscilloscopeLqi/MultihopOscilloscopeC.nc b/apps/MultihopOscilloscopeLqi/MultihopOscilloscopeC.nc index fff54d7c..17edb6b7 100644 --- a/apps/MultihopOscilloscopeLqi/MultihopOscilloscopeC.nc +++ b/apps/MultihopOscilloscopeLqi/MultihopOscilloscopeC.nc @@ -128,8 +128,9 @@ implementation { oscilloscope_t* in = (oscilloscope_t*)payload; oscilloscope_t* out; if (uartbusy == FALSE) { - out = (oscilloscope_t*)call SerialSend.getPayload(&uartbuf); - if (len != sizeof(oscilloscope_t)) { + out = (oscilloscope_t*)call SerialSend.getPayload(&uartbuf, sizeof(oscilloscope_t)); + if (out == NULL) { + fatal_problem(); return msg; } else { @@ -148,7 +149,11 @@ implementation { } //Prepare message to be sent over the uart - out = (oscilloscope_t*)call SerialSend.getPayload(newmsg); + out = (oscilloscope_t*)call SerialSend.getPayload(newmsg, sizeof(oscilloscope_t)); + if (out == NULL) { + fatal_problem(); + return msg; + } memcpy(out, in, sizeof(oscilloscope_t)); if (call UARTQueue.enqueue(newmsg) != SUCCESS) { @@ -224,7 +229,11 @@ implementation { event void Timer.fired() { if (reading == NREADINGS) { if (!sendbusy) { - oscilloscope_t *o = (oscilloscope_t *)call Send.getPayload(&sendbuf); + oscilloscope_t *o = (oscilloscope_t *)call Send.getPayload(&sendbuf, sizeof(oscilloscope_t)); + if (o == NULL) { + fatal_problem(); + return; + } memcpy(o, &local, sizeof(local)); if (call Send.send(&sendbuf, sizeof(local)) == SUCCESS) sendbusy = TRUE;