mirror of
				https://github.com/luanti-org/luanti.git
				synced 2025-11-04 01:05:48 +01:00 
			
		
		
		
	Fix narrow_to_wide_c (ANDROID)
* Ensure converted string is NUL terminated
* Restore logic to that used prior to 9e2a9b5
			
			
This commit is contained in:
		@@ -83,16 +83,18 @@ const wchar_t *narrow_to_wide_c(const char *mbs)
 | 
			
		||||
	size_t mbl = strlen(mbs);
 | 
			
		||||
	wchar_t *wcs = new wchar_t[mbl + 1];
 | 
			
		||||
 | 
			
		||||
	for (size_t i = 0; i < mbl; i++) {
 | 
			
		||||
	size_t i, dest_i = 0;
 | 
			
		||||
	for (i = 0; i < mbl; i++) {
 | 
			
		||||
		if (((unsigned char) mbs[i] > 31) &&
 | 
			
		||||
				((unsigned char) mbs[i] < 127)) {
 | 
			
		||||
			wcs[i] = wide_chars[(unsigned char) mbs[i] - 32];
 | 
			
		||||
			wcs[dest_i++] = wide_chars[(unsigned char) mbs[i] - 32];
 | 
			
		||||
		}
 | 
			
		||||
		//handle newline
 | 
			
		||||
		else if (mbs[i] == '\n') {
 | 
			
		||||
			wcs[i] = L'\n';
 | 
			
		||||
			wcs[dest_i++] = L'\n';
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	wcs[dest_i] = '\0';
 | 
			
		||||
 | 
			
		||||
	return wcs;
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user