Don't return an error string for NO_INTERFACES_FOUND.

Most callers of capture_interface_list() don't expect an error string
for NO_INTERFACES_FOUND, because that's not really an error, it's just a
statement of face (and perhaps an error of 0 should be returned), so
they don't bother freeing the error string, causing a leak.

Instead, have the one place that *did* expect it to return an error
string just put "No interfaces found" itself.

Also, have that place not check for an error string if interfaces *were*
found, as no error code or string is returned in that case.

Change-Id: I9cb8ed7ad22810b23e2251d2833d9b7ab02eec03
Reviewed-on: https://code.wireshark.org/review/3165
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Reviewed-on: https://code.wireshark.org/review/3167