diff --git a/src/coffi/ffi.clj b/src/coffi/ffi.clj index 6629c9b..a09d9b1 100644 --- a/src/coffi/ffi.clj +++ b/src/coffi/ffi.clj @@ -480,8 +480,9 @@ (defn find-symbol "Gets the [[MemoryAddress]] of a symbol from the loaded libraries." [sym] - ;; TODO(Joshua): Ensure this looks up both in the system, and loaded libraries (see `SymbolLookup#loaderLookup`) - (.. (CLinker/systemLookup) (lookup (name sym)) (orElse nil))) + (let [sym (name sym)] + (or (.. (CLinker/systemLookup) (lookup sym) (orElse nil)) + (.. (CLinker/systemLookup) (loaderLookup) (lookup sym) (orElse nil))))) (defn- method-type "Gets the [[MethodType]] for a set of `args` and `ret` types."