소스 검색

static buffer realloc correction

Michal Matyska 19 년 전
부모
커밋
31c3b54097
1개의 변경된 파일3개의 추가작업 그리고 1개의 파일을 삭제
  1. 3 1
      select_buf.c

+ 3 - 1
select_buf.c

@@ -67,6 +67,7 @@ static int active_buffer=-1;
 #define ALLOC_SIZE(req_size) (((req_size/BUFFER_GRANULARITY)+1)*BUFFER_GRANULARITY)
 
 int allocate_buffer(int req_size) {
+	void *b;
 	int size=ALLOC_SIZE(req_size);
 	
 	if (buffer[active_buffer].b == NULL) {
@@ -83,7 +84,8 @@ int allocate_buffer(int req_size) {
 		return 1;
 	}
 	
-	if (pkg_realloc(buffer[active_buffer].b,size)) {
+	if ((b=pkg_realloc(buffer[active_buffer].b,size))) {
+		buffer[active_buffer].b=b;
 		buffer[active_buffer].size=size;
 		buffer[active_buffer].offset=0;
 		return 1;