updated build system
This commit is contained in:
		
							
								
								
									
										8
									
								
								support/3rd_party/src/utils/path.cpp
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										8
									
								
								support/3rd_party/src/utils/path.cpp
									
									
									
									
										vendored
									
									
								
							| @@ -37,6 +37,8 @@ static const std::wstring directory_seperator_str_w{ | |||||||
|  |  | ||||||
| [[nodiscard]] auto resolve(std::string path) -> std::string { | [[nodiscard]] auto resolve(std::string path) -> std::string { | ||||||
| #if defined(_WIN32) | #if defined(_WIN32) | ||||||
|  |   if (repertory::utils::string::contains(path, "~") || | ||||||
|  |       repertory::utils::string::contains(path, "%")) { | ||||||
|     repertory::utils::string::replace(path, "~", "%USERPROFILE%"); |     repertory::utils::string::replace(path, "~", "%USERPROFILE%"); | ||||||
|  |  | ||||||
|     std::string dest; |     std::string dest; | ||||||
| @@ -44,8 +46,9 @@ static const std::wstring directory_seperator_str_w{ | |||||||
|     ::ExpandEnvironmentStringsA(path.c_str(), dest.data(), |     ::ExpandEnvironmentStringsA(path.c_str(), dest.data(), | ||||||
|                                 static_cast<DWORD>(dest.size())); |                                 static_cast<DWORD>(dest.size())); | ||||||
|     path = dest.c_str(); |     path = dest.c_str(); | ||||||
|   return path; |   } | ||||||
| #else  // !defined (_WIN32) | #else  // !defined (_WIN32) | ||||||
|  |   if (repertory::utils::string::contains(path, "~")) { | ||||||
|     std::string home{}; |     std::string home{}; | ||||||
|     repertory::utils::use_getpwuid(getuid(), [&home](struct passwd *pw) { |     repertory::utils::use_getpwuid(getuid(), [&home](struct passwd *pw) { | ||||||
|       home = (pw->pw_dir ? pw->pw_dir : ""); |       home = (pw->pw_dir ? pw->pw_dir : ""); | ||||||
| @@ -55,7 +58,10 @@ static const std::wstring directory_seperator_str_w{ | |||||||
|     }); |     }); | ||||||
|  |  | ||||||
|     return repertory::utils::string::replace(path, "~", home); |     return repertory::utils::string::replace(path, "~", home); | ||||||
|  |   } | ||||||
| #endif // defined (_WIN32) | #endif // defined (_WIN32) | ||||||
|  |  | ||||||
|  |   return path; | ||||||
| } | } | ||||||
| } // namespace | } // namespace | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user