mirror of
https://github.com/willmiao/ComfyUI-Lora-Manager.git
synced 2026-03-25 23:25:43 -03:00
fix: Normalize path separators in relative path handling for improved compatibility across platforms
This commit is contained in:
@@ -398,12 +398,12 @@ class BaseModelService(ABC):
|
|||||||
relative_path = None
|
relative_path = None
|
||||||
for root in model_roots:
|
for root in model_roots:
|
||||||
# Normalize paths for comparison
|
# Normalize paths for comparison
|
||||||
normalized_root = os.path.normpath(root).replace(os.sep, '/')
|
normalized_root = os.path.normpath(root)
|
||||||
normalized_file = os.path.normpath(file_path).replace(os.sep, '/')
|
normalized_file = os.path.normpath(file_path)
|
||||||
|
|
||||||
if normalized_file.startswith(normalized_root):
|
if normalized_file.startswith(normalized_root):
|
||||||
# Remove root and leading slash to get relative path
|
# Remove root and leading separator to get relative path
|
||||||
relative_path = normalized_file[len(normalized_root):].lstrip('/')
|
relative_path = normalized_file[len(normalized_root):].lstrip(os.sep)
|
||||||
break
|
break
|
||||||
|
|
||||||
if relative_path and search_lower in relative_path.lower():
|
if relative_path and search_lower in relative_path.lower():
|
||||||
|
|||||||
@@ -167,6 +167,7 @@ class LoraService(BaseModelService):
|
|||||||
if file_path:
|
if file_path:
|
||||||
# Convert to forward slashes and extract relative path
|
# Convert to forward slashes and extract relative path
|
||||||
file_path_normalized = file_path.replace('\\', '/')
|
file_path_normalized = file_path.replace('\\', '/')
|
||||||
|
relative_path = relative_path.replace('\\', '/')
|
||||||
# Find the relative path part by looking for the relative_path in the full path
|
# Find the relative path part by looking for the relative_path in the full path
|
||||||
if file_path_normalized.endswith(relative_path) or relative_path in file_path_normalized:
|
if file_path_normalized.endswith(relative_path) or relative_path in file_path_normalized:
|
||||||
return lora.get('usage_tips', '')
|
return lora.get('usage_tips', '')
|
||||||
|
|||||||
@@ -248,7 +248,7 @@ class AutoComplete {
|
|||||||
if (!this.previewTooltip) return;
|
if (!this.previewTooltip) return;
|
||||||
|
|
||||||
// Extract filename without extension for preview
|
// Extract filename without extension for preview
|
||||||
const fileName = relativePath.split('/').pop();
|
const fileName = relativePath.split(/[/\\]/).pop();
|
||||||
const loraName = fileName.replace(/\.(safetensors|ckpt|pt|bin)$/i, '');
|
const loraName = fileName.replace(/\.(safetensors|ckpt|pt|bin)$/i, '');
|
||||||
|
|
||||||
// Get item position for tooltip positioning
|
// Get item position for tooltip positioning
|
||||||
@@ -380,7 +380,7 @@ class AutoComplete {
|
|||||||
|
|
||||||
async insertSelection(relativePath) {
|
async insertSelection(relativePath) {
|
||||||
// Extract just the filename for LoRA name
|
// Extract just the filename for LoRA name
|
||||||
const fileName = relativePath.split('/').pop().replace(/\.(safetensors|ckpt|pt|bin)$/i, '');
|
const fileName = relativePath.split(/[/\\]/).pop().replace(/\.(safetensors|ckpt|pt|bin)$/i, '');
|
||||||
|
|
||||||
// Get usage tips and extract strength
|
// Get usage tips and extract strength
|
||||||
let strength = 1.0; // Default strength
|
let strength = 1.0; // Default strength
|
||||||
|
|||||||
Reference in New Issue
Block a user