From 31d2ab5fc4c4dc589e69dbfa7ad3a6f77410ead7 Mon Sep 17 00:00:00 2001 From: jao Date: Sun, 10 May 2026 19:33:18 +0200 Subject: ensuring absolute paths in locations of system definitions this one should fix #64: when asking guile for the path of a core module, it'll answer with a relative path that must be resolved against the load path. --- src/geiser/modules.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/geiser/modules.scm b/src/geiser/modules.scm index 32b0f1f..db694ca 100644 --- a/src/geiser/modules.scm +++ b/src/geiser/modules.scm @@ -1,6 +1,6 @@ ;;; modules.scm -- module metadata -;; Copyright (C) 2009, 2010, 2011, 2018 Jose Antonio Ortega Ruiz +;; Copyright (C) 2009, 2010, 2011, 2018, 2026 Jose Antonio Ortega Ruiz ;; This program is free software; you can redistribute it and/or ;; modify it under the terms of the Modified BSD License. You should @@ -80,8 +80,9 @@ (define (module-path module-name) (and (module-name? module-name) - (or ((@@ (ice-9 session) module-filename) module-name) - (module-filename (resolve-module module-name #f))))) + (let ((file (or ((@@ (ice-9 session) module-filename) module-name) + (module-filename (resolve-module module-name #f))))) + (and (string? file) (%search-load-path file))))) (define (submodules mod) (hash-map->list (lambda (k v) v) (module-submodules mod))) -- cgit v1.2.3