libkmod-hash: Plug possible memory leak when free_value is defined
libkmod-hash: Plug possible memory leak when free_value is defined

Although the hash table implementation allows passing a callback function
to free a value when it is removed from the hash table, hash_del() wasn't
freeing it if it was provided. Now it does.

As a bonus, it now checks if the callback is set in hash_add() as well.

pmmccorm/kmod,Distrotech/kmod,Distrotech/kmod,lucasdemarchi/kmod,lpereira/kmod,lpereira/kmod,Distrotech/kmod,lucasdemarchi/kmod,lpereira/kmod,pmmccorm/kmod,lucasdemarchi/kmod,pmmccorm/kmod