avserver.c:3913: error: Null Dereference
  pointer `init_func` last assigned on line 3905 could be null and is dereferenced at line 3913, column 5.

avserver.c:3894:1: start of procedure load_module()
3892. 
3893. #if HAVE_DLOPEN
3894. static void load_module(const char *filename)
      ^
3895. {
3896.     void *dll;

avserver.c:3898:5: Skipping dlopen(): method has no implementation
3896.     void *dll;
3897.     void (*init_func)(void);
3898.     dll = dlopen(filename, RTLD_NOW);
          ^
3899.     if (!dll) {
3900.         fprintf(stderr, "Could not load module '%s' - %s\n",

avserver.c:3899:10: Taking false branch
3897.     void (*init_func)(void);
3898.     dll = dlopen(filename, RTLD_NOW);
3899.     if (!dll) {
               ^
3900.         fprintf(stderr, "Could not load module '%s' - %s\n",
3901.                 filename, dlerror());

avserver.c:3905:5: Skipping dlsym(): method has no implementation
3903.     }
3904. 
3905.     init_func = dlsym(dll, "avserver_module_init");
          ^
3906.     if (!init_func) {
3907.         fprintf(stderr,

avserver.c:3906:10: Taking true branch
3904. 
3905.     init_func = dlsym(dll, "avserver_module_init");
3906.     if (!init_func) {
               ^
3907.         fprintf(stderr,
3908.                 "%s: init function 'avserver_module_init()' not found\n",

avserver.c:3907:9: 
3905.     init_func = dlsym(dll, "avserver_module_init");
3906.     if (!init_func) {
3907.         fprintf(stderr,
              ^
3908.                 "%s: init function 'avserver_module_init()' not found\n",
3909.                 filename);

avserver.c:3910:9: Skipping dlclose(): method has no implementation
3908.                 "%s: init function 'avserver_module_init()' not found\n",
3909.                 filename);
3910.         dlclose(dll);
              ^
3911.     }
3912. 

avserver.c:3913:5: 
3911.     }
3912. 
3913.     init_func();
          ^
3914. }
3915. #endif
