Coverage Report

Created: 2025-07-18 06:07

/src/data_context_fuzzer.cc
Line
Count
Source (jump to first uncovered line)
1
#include "sass.h"
2
3
29
extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
4
29
  char* sass_data = (char*) malloc(sizeof(char) * size + 1);
5
29
  if (sass_data == NULL) return 0;
6
7
29
  memcpy(sass_data, data, size);
8
29
  sass_data[size] = '\0';
9
10
29
  struct Sass_Data_Context* ctx = sass_make_data_context(sass_data);
11
29
  if (ctx == NULL) {
12
0
    free(sass_data);
13
0
    return 0;
14
0
  }
15
16
29
  struct Sass_Options* options = sass_make_options();
17
29
  if (options == NULL) {
18
0
    sass_delete_data_context(ctx);
19
0
    return 0;
20
0
  }
21
22
29
  sass_option_set_output_style(options, SASS_STYLE_NESTED);
23
29
  sass_option_set_precision(options, 5);
24
25
29
  sass_data_context_set_options(ctx, options);
26
29
  sass_compile_data_context(ctx);
27
28
29
  sass_delete_data_context(ctx);
29
29
  sass_delete_options(options);
30
31
29
  return 0;
32
29
}