eagleas/clamav — pull request #5 by kmullin (2012-09-21 17:36:45+00:00)
Title: clamavr_reload(): cl_engine_free() and cl_engine_new() before cl_load()

I was trying to use your Ruby bindings for `libclamav 0.97.6` and noticed that `reload()` wasn't working properly and would cause libclamav to error out with:

```
LibClamAV Error: cl_load(): can't load new databases when engine is already compiled
RuntimeError - cl_load() error: Invalid argument passed to function
```

With my very little C knowledge I traced it down to this piece of code missing where you need to actually call `cl_engine_free()` and then `cl_engine_new()`

I crossed referenced it with [clamav api docs](http://www.clamav.net/doc/latest/html/node43.html)

**DISCLAIMER:** I have not tested this with `libclamav 0.96.x` (yet).

Opening Pull Request for visibility, and discussion.