Пример #1
0
void
fs_stream_write_data( struct fs_output_stream* stream,  BYTE* data, size_t len ){
    
    if (!data) {
        return;
    }
    
    if(stream->weak_ref){
        if(stream->pos + len > stream->buff_len){
            fs_assert(fs_true, "OutputStrem EOF");// 纯引用,出现溢出
        }
    }
    
    fs_assert(stream->buff_len != 0, "buff_len == 0");
        
    while(stream->pos + len > stream->buff_len){
        stream->buff_len = (stream->buff_len << 1);
        
        
        
        stream->data = fs_realloc(stream->data, stream->buff_len);
    }
    
    memcpy(stream->data + stream->pos, data, len);
    stream->pos += len;
}
Пример #2
0
void
fs_stream_write_data( struct fs_output_stream* stream,  BYTE* data, size_t len ){
    
    if(stream->weak_ref){
        if(stream->pos + len > stream->buff_len){
            fs_assert(fs_true, "OutputStrem EOF");// 纯引用,出现溢出
        }
    }
    
    if(stream->buff_len == 0) stream->buff_len = 1;
    while(stream->pos + len > stream->buff_len){
        void* data = fs_realloc(stream->data, stream->buff_len << 1);
        stream->data = data;
        stream->buff_len = stream->buff_len << 1;
    }
    
    memcpy(stream->data + stream->pos, data, len);
    stream->pos += len;
}
Пример #3
0
void
fs_node_set_from_listener( struct fs_node* node ){
    fs_assert(!node->from_connect, "");
    node->from_listener = fs_true;
}