mirror of
				https://github.com/nvm-sh/nvm.git
				synced 2025-11-03 22:47:13 +00:00 
			
		
		
		
	Process additional (--) parameters before final version parameter.
Fixes issue #1762.
This commit is contained in:
		
							parent
							
								
									14179bc8ce
								
							
						
					
					
						commit
						0dfe929295
					
				
							
								
								
									
										70
									
								
								nvm.sh
									
									
									
									
									
								
							
							
						
						
									
										70
									
								
								nvm.sh
									
									
									
									
									
								
							@ -2519,6 +2519,41 @@ nvm() {
 | 
				
			|||||||
        esac
 | 
					        esac
 | 
				
			||||||
      done
 | 
					      done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      ADDITIONAL_PARAMETERS=''
 | 
				
			||||||
 | 
					      local PROVIDED_REINSTALL_PACKAGES_FROM
 | 
				
			||||||
 | 
					      local REINSTALL_PACKAGES_FROM
 | 
				
			||||||
 | 
					      local SKIP_DEFAULT_PACKAGES
 | 
				
			||||||
 | 
					      local DEFAULT_PACKAGES
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      while [ $# -ne 0 ]
 | 
				
			||||||
 | 
					      do
 | 
				
			||||||
 | 
					        case "$1" in
 | 
				
			||||||
 | 
					          --reinstall-packages-from=*)
 | 
				
			||||||
 | 
					            PROVIDED_REINSTALL_PACKAGES_FROM="$(nvm_echo "$1" | command cut -c 27-)"
 | 
				
			||||||
 | 
					            if [ -z "${PROVIDED_REINSTALL_PACKAGES_FROM}" ]; then
 | 
				
			||||||
 | 
					              nvm_err 'If --reinstall-packages-from is provided, it must point to an installed version of node.'
 | 
				
			||||||
 | 
					              return 6
 | 
				
			||||||
 | 
					            fi
 | 
				
			||||||
 | 
					            REINSTALL_PACKAGES_FROM="$(nvm_version "$PROVIDED_REINSTALL_PACKAGES_FROM")" ||:
 | 
				
			||||||
 | 
					          ;;
 | 
				
			||||||
 | 
					          --reinstall-packages-from)
 | 
				
			||||||
 | 
					            nvm_err 'If --reinstall-packages-from is provided, it must point to an installed version of node using `=`.'
 | 
				
			||||||
 | 
					            return 6
 | 
				
			||||||
 | 
					          ;;
 | 
				
			||||||
 | 
					          --copy-packages-from=*)
 | 
				
			||||||
 | 
					            PROVIDED_REINSTALL_PACKAGES_FROM="$(nvm_echo "$1" | command cut -c 22-)"
 | 
				
			||||||
 | 
					            REINSTALL_PACKAGES_FROM="$(nvm_version "$PROVIDED_REINSTALL_PACKAGES_FROM")" ||:
 | 
				
			||||||
 | 
					          ;;
 | 
				
			||||||
 | 
					          --skip-default-packages)
 | 
				
			||||||
 | 
					            SKIP_DEFAULT_PACKAGES=true
 | 
				
			||||||
 | 
					          ;;
 | 
				
			||||||
 | 
					          *)
 | 
				
			||||||
 | 
					            ADDITIONAL_PARAMETERS="$ADDITIONAL_PARAMETERS $1"
 | 
				
			||||||
 | 
					          ;;
 | 
				
			||||||
 | 
					        esac
 | 
				
			||||||
 | 
					        shift
 | 
				
			||||||
 | 
					      done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      local provided_version
 | 
					      local provided_version
 | 
				
			||||||
      provided_version="${1-}"
 | 
					      provided_version="${1-}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -2576,41 +2611,6 @@ nvm() {
 | 
				
			|||||||
        return 3
 | 
					        return 3
 | 
				
			||||||
      fi
 | 
					      fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      ADDITIONAL_PARAMETERS=''
 | 
					 | 
				
			||||||
      local PROVIDED_REINSTALL_PACKAGES_FROM
 | 
					 | 
				
			||||||
      local REINSTALL_PACKAGES_FROM
 | 
					 | 
				
			||||||
      local SKIP_DEFAULT_PACKAGES
 | 
					 | 
				
			||||||
      local DEFAULT_PACKAGES
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      while [ $# -ne 0 ]
 | 
					 | 
				
			||||||
      do
 | 
					 | 
				
			||||||
        case "$1" in
 | 
					 | 
				
			||||||
          --reinstall-packages-from=*)
 | 
					 | 
				
			||||||
            PROVIDED_REINSTALL_PACKAGES_FROM="$(nvm_echo "$1" | command cut -c 27-)"
 | 
					 | 
				
			||||||
            if [ -z "${PROVIDED_REINSTALL_PACKAGES_FROM}" ]; then
 | 
					 | 
				
			||||||
              nvm_err 'If --reinstall-packages-from is provided, it must point to an installed version of node.'
 | 
					 | 
				
			||||||
              return 6
 | 
					 | 
				
			||||||
            fi
 | 
					 | 
				
			||||||
            REINSTALL_PACKAGES_FROM="$(nvm_version "$PROVIDED_REINSTALL_PACKAGES_FROM")" ||:
 | 
					 | 
				
			||||||
          ;;
 | 
					 | 
				
			||||||
          --reinstall-packages-from)
 | 
					 | 
				
			||||||
            nvm_err 'If --reinstall-packages-from is provided, it must point to an installed version of node using `=`.'
 | 
					 | 
				
			||||||
            return 6
 | 
					 | 
				
			||||||
          ;;
 | 
					 | 
				
			||||||
          --copy-packages-from=*)
 | 
					 | 
				
			||||||
            PROVIDED_REINSTALL_PACKAGES_FROM="$(nvm_echo "$1" | command cut -c 22-)"
 | 
					 | 
				
			||||||
            REINSTALL_PACKAGES_FROM="$(nvm_version "$PROVIDED_REINSTALL_PACKAGES_FROM")" ||:
 | 
					 | 
				
			||||||
          ;;
 | 
					 | 
				
			||||||
          --skip-default-packages)
 | 
					 | 
				
			||||||
            SKIP_DEFAULT_PACKAGES=true
 | 
					 | 
				
			||||||
          ;;
 | 
					 | 
				
			||||||
          *)
 | 
					 | 
				
			||||||
            ADDITIONAL_PARAMETERS="$ADDITIONAL_PARAMETERS $1"
 | 
					 | 
				
			||||||
          ;;
 | 
					 | 
				
			||||||
        esac
 | 
					 | 
				
			||||||
        shift
 | 
					 | 
				
			||||||
      done
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      if [ -z "${SKIP_DEFAULT_PACKAGES-}" ] && [ -f "${NVM_DIR}/default-packages" ]; then
 | 
					      if [ -z "${SKIP_DEFAULT_PACKAGES-}" ] && [ -f "${NVM_DIR}/default-packages" ]; then
 | 
				
			||||||
        DEFAULT_PACKAGES=""
 | 
					        DEFAULT_PACKAGES=""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user