Hi.
Can anybody figure out the possible reason why i caused the next error?

The program crash at:

Program received signal SIGSEGV, Segmentation fault.
uv__write (stream=0x675898) at src/unix/stream.c:828
828           size_t len = buf->len;


backtrace output:

(gdb) bt
#0  uv__write (stream=0x675898) at src/unix/stream.c:828
#1  0x000000000042b6e6 in uv__stream_io (loop=<value optimized out>, 
w=0x675920, events=<value optimized out>) at src/unix/stream.c:1229
#2  0x00000000004262e3 in uv__run_pending (loop=0x642a20, 
mode=UV_RUN_DEFAULT) at src/unix/core.c:702
#3  uv_run (loop=0x642a20, mode=UV_RUN_DEFAULT) at src/unix/core.c:315
#4  0x000000000040a04b in server_run () at server.c:1273
#5  0x0000000000404245 in main (argc=1, argv=0x7fffffffe448) at nproxy.c:174

(gdb) f 0
#0  uv__write (stream=0x675898) at src/unix/stream.c:828
828           size_t len = buf->len;

(gdb) p buf
$8 = (uv_buf_t *) 0x10
(gdb) p buf->len
Cannot access memory at address 0x18

(gdb) p *stream
$10 = {data = 0x675880, loop = 0x642a20, type = UV_TCP, close_cb = 0, 
handle_queue = {0x6759b0, 0x6664f0}, reserved = {0xe8c93a4155c08e2a, 
0x9e48a03bc96b2226, 0x286b377c4174719a, 0x30b8a716f31422af}, next_closing = 
0x0, flags = 24932, 
  write_queue_size = 1380, alloc_cb = 0x4079ae <server_on_alloc_cb>, 
read_cb = 0x409603 <server_on_read_done>, connect_req = 0x0, shutdown_req = 
0x0, io_watcher = {cb = 0x42b570 <uv__stream_io>, pending_queue = 
{0x675928, 0x675928}, watcher_queue = {
      0x675938, 0x675938}, pevents = 5, events = 5, fd = 40}, write_queue = 
{0x675a80, 0x675a80}, write_completed_queue = {0x675968, 0x675968}, 
connection_cb = 0, delayed_error = 0, accepted_fd = -1, queued_fds = 0x0}


And the follow is part of my associated uv_write code:

```
uv_buf_t buf;

buf.base = (char *)data;
buf.len = len;

r = uv_write(&conn->write_req, (uv_stream_t *)&conn->handle, &buf, 1 , 
server_on_write_done);
```

Thanks


kenshin

-- 
You received this message because you are subscribed to the Google Groups 
"libuv" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/libuv.
For more options, visit https://groups.google.com/d/optout.

Reply via email to