fix windows
This commit is contained in:
		
							parent
							
								
									d2ca68b177
								
							
						
					
					
						commit
						a089a5f98b
					
				
							
								
								
									
										55
									
								
								src/index.js
									
									
									
									
									
								
							
							
						
						
									
										55
									
								
								src/index.js
									
									
									
									
									
								
							@ -57,24 +57,36 @@ function setupProtocolHandling() {
 | 
			
		||||
    app.on('second-instance', (event, commandLine, workingDirectory) => {
 | 
			
		||||
        console.log('[Protocol] Second instance command line:', commandLine);
 | 
			
		||||
        
 | 
			
		||||
        // Focus existing window first
 | 
			
		||||
        focusMainWindow();
 | 
			
		||||
        
 | 
			
		||||
        // Look for protocol URL in command line arguments - filter out invalid paths
 | 
			
		||||
        const protocolUrl = commandLine.find(arg => {
 | 
			
		||||
            return arg && 
 | 
			
		||||
                   typeof arg === 'string' && 
 | 
			
		||||
                   arg.startsWith('pickleglass://') && 
 | 
			
		||||
                   arg.includes('://') && 
 | 
			
		||||
                   !arg.includes('\\') && // Exclude Windows paths
 | 
			
		||||
                   !arg.includes('₩'); // Exclude corrupted characters
 | 
			
		||||
        });
 | 
			
		||||
        let protocolUrl = null;
 | 
			
		||||
        
 | 
			
		||||
        if (process.platform === 'win32') {
 | 
			
		||||
            // Windows
 | 
			
		||||
            const lastArg = commandLine.length > 0 ? commandLine[commandLine.length - 1] : null;
 | 
			
		||||
            if (lastArg && 
 | 
			
		||||
                typeof lastArg === 'string' && 
 | 
			
		||||
                lastArg.startsWith('pickleglass://') && 
 | 
			
		||||
                !lastArg.includes('\\') && 
 | 
			
		||||
                !lastArg.includes('₩')) {
 | 
			
		||||
                protocolUrl = lastArg;
 | 
			
		||||
            }
 | 
			
		||||
        } else {
 | 
			
		||||
            // Linux or etc
 | 
			
		||||
            const lastArg = commandLine.length > 0 ? commandLine[commandLine.length - 1] : null;
 | 
			
		||||
            if (lastArg && 
 | 
			
		||||
                typeof lastArg === 'string' && 
 | 
			
		||||
                lastArg.startsWith('pickleglass://')) {
 | 
			
		||||
                protocolUrl = lastArg;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        
 | 
			
		||||
        if (protocolUrl) {
 | 
			
		||||
            console.log('[Protocol] Valid URL found from second instance:', protocolUrl);
 | 
			
		||||
            console.log('[Protocol] Valid URL found from second instance (last arg):', protocolUrl);
 | 
			
		||||
            handleCustomUrl(protocolUrl);
 | 
			
		||||
        } else {
 | 
			
		||||
            console.log('[Protocol] No valid protocol URL found in command line arguments');
 | 
			
		||||
            console.log('[Protocol] Command line args:', commandLine);
 | 
			
		||||
        }
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
@ -123,18 +135,19 @@ function focusMainWindow() {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
if (process.platform === 'win32') {
 | 
			
		||||
    const protocolArg = process.argv.find(arg => 
 | 
			
		||||
        arg && 
 | 
			
		||||
        typeof arg === 'string' && 
 | 
			
		||||
        arg.startsWith('pickleglass://') && 
 | 
			
		||||
        !arg.includes('\\') && 
 | 
			
		||||
        !arg.includes('₩')
 | 
			
		||||
    );
 | 
			
		||||
    const lastArg = process.argv.length > 0 ? process.argv[process.argv.length - 1] : null;
 | 
			
		||||
    
 | 
			
		||||
    if (protocolArg) {
 | 
			
		||||
        console.log('[Protocol] Found protocol URL in initial arguments:', protocolArg);
 | 
			
		||||
        pendingDeepLinkUrl = protocolArg;
 | 
			
		||||
    if (lastArg && 
 | 
			
		||||
        typeof lastArg === 'string' && 
 | 
			
		||||
        lastArg.startsWith('pickleglass://') && 
 | 
			
		||||
        !lastArg.includes('\\') && 
 | 
			
		||||
        !lastArg.includes('₩')) {
 | 
			
		||||
        
 | 
			
		||||
        console.log('[Protocol] Found protocol URL in initial arguments (last arg):', lastArg);
 | 
			
		||||
        pendingDeepLinkUrl = lastArg;
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    console.log('[Protocol] Initial process.argv:', process.argv);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
const gotTheLock = app.requestSingleInstanceLock();
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user