diff options
author | bencollins <bencollins@53a565d1-3bb7-0310-b661-cf11e63c67ab> | 2003-09-26 13:51:31 +0000 |
---|---|---|
committer | bencollins <bencollins@53a565d1-3bb7-0310-b661-cf11e63c67ab> | 2003-09-26 13:51:31 +0000 |
commit | 0072343aabd43e23d8ce4ba255afbc4622a1da64 (patch) | |
tree | 893d7027b3e65dcfed5c26e54ef4eda358e4ef02 | |
parent | 2e8ba91c51c7777054b93483586403ed59a4983b (diff) | |
download | libraw1394-0072343aabd43e23d8ce4ba255afbc4622a1da64.tar.gz |
Fixup async_stream to use same local req variable for reentrancy.
git-svn-id: svn://svn.linux1394.org/libraw1394/trunk@132 53a565d1-3bb7-0310-b661-cf11e63c67ab
-rw-r--r-- | src/readwrite.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/readwrite.c b/src/readwrite.c index ca6ac56..4e2e6ea 100644 --- a/src/readwrite.c +++ b/src/readwrite.c @@ -255,20 +255,20 @@ int raw1394_start_async_stream(struct raw1394_handle *handle, unsigned int speed, size_t length, quadlet_t *data, unsigned long rawtag) { - struct raw1394_request *req = &handle->req; + struct raw1394_request req; - CLEAR_REQ(req); + CLEAR_REQ(&req); - req->type = RAW1394_REQ_ASYNC_STREAM; - req->generation = handle->generation; - req->tag = rawtag; + req.type = RAW1394_REQ_ASYNC_STREAM; + req.generation = handle->generation; + req.tag = rawtag; - req->address = ((__u64)channel << 48) | speed; - req->misc = (tag << 16) | sy; - req->length = length; - req->sendb = ptr2int(data); + req.address = ((__u64)channel << 48) | speed; + req.misc = (tag << 16) | sy; + req.length = length; + req.sendb = ptr2int(data); - return (int)write(handle->fd, req, sizeof(*req)); + return (int)write(handle->fd, &req, sizeof(req)); } int raw1394_start_async_send(struct raw1394_handle *handle, |