Просмотр исходного кода

Fix allocs in function_cache and value_to_c_string

Lucas Stadler лет назад: 9
Родитель
Сommit
fda8b26104
1 измененных файлов с 9 добавлено и 10 удалено
  1. 9 10
      c/ton/main.c

+ 9 - 10
c/ton/main.c

176
		int max_suffix_len = 20;
176
		int max_suffix_len = 20;
177
		int prefix_len = strlen(cache_prefix);
177
		int prefix_len = strlen(cache_prefix);
178
		char *path = malloc((prefix_len + max_suffix_len) * sizeof(char));
178
		char *path = malloc((prefix_len + max_suffix_len) * sizeof(char));
179
		memset(path, 0, prefix_len + max_suffix_len);
179
180
180
		suffix = ".js";
181
		suffix = ".js";
181
		strncpy(path, cache_prefix, prefix_len);
182
		path[prefix_len] = '\0';
183
		strncat(path, suffix, strlen(suffix));
182
		strcpy(path, cache_prefix);
183
		strcat(path, suffix);
184
		write_contents(path, source);
184
		write_contents(path, source);
185
185
186
		suffix = ".cache.json";
186
		suffix = ".cache.json";
187
		strncpy(path, cache_prefix, prefix_len);
188
		path[prefix_len] = '\0';
189
		strncat(path, suffix, strlen(suffix));
187
		strcpy(path, cache_prefix);
188
		strcat(path, suffix);
190
		write_contents(path, cache);
189
		write_contents(path, cache);
191
190
192
		suffix = ".js.map.json";
191
		suffix = ".js.map.json";
193
		strncpy(path, cache_prefix, prefix_len);
194
		path[prefix_len] = '\0';
195
		strncat(path, suffix, strlen(suffix));
192
		strcpy(path, cache_prefix);
193
		strcat(path, suffix);
196
		write_contents(path, sourcemap);
194
		write_contents(path, sourcemap);
197
195
198
		free(cache_prefix);
196
		free(cache_prefix);
517
	}
515
	}
518
516
519
	JSStringRef str_ref = JSValueToStringCopy(ctx, val, NULL);
517
	JSStringRef str_ref = JSValueToStringCopy(ctx, val, NULL);
520
	size_t len = JSStringGetLength(str_ref);
518
	size_t len = JSStringGetLength(str_ref) + 1;
521
	char *str = malloc(len * sizeof(char));
519
	char *str = malloc(len * sizeof(char));
520
	memset(str, 0, len);
522
	JSStringGetUTF8CString(str_ref, str, len);
521
	JSStringGetUTF8CString(str_ref, str, len);
523
	JSStringRelease(str_ref);
522
	JSStringRelease(str_ref);
524
523