ucx/buffer.c

changeset 95
ecfdc1c4a552
parent 86
55bf819cbc88
child 103
08018864fb91
equal deleted inserted replaced
94:57ea041df22f 95:ecfdc1c4a552
61 } 61 }
62 return dst; 62 return dst;
63 } 63 }
64 64
65 int ucx_buffer_seek(UcxBuffer *buffer, off_t offset, int whence) { 65 int ucx_buffer_seek(UcxBuffer *buffer, off_t offset, int whence) {
66 off_t npos = 0; 66 size_t npos = 0;
67 switch (whence) { 67 switch (whence) {
68 case SEEK_SET: 68 case SEEK_SET:
69 npos = 0; 69 npos = 0;
70 break; 70 break;
71 case SEEK_CUR: 71 case SEEK_CUR:
76 break; 76 break;
77 } 77 }
78 78
79 npos += offset; 79 npos += offset;
80 80
81 if (npos < 0 || npos > buffer->size) { 81 if (npos > buffer->size) {
82 return -1; 82 return -1;
83 } else { 83 } else {
84 buffer->pos = npos; 84 buffer->pos = npos;
85 return 0; 85 return 0;
86 } 86 }

mercurial