File: TestEnvironmentMergeEnvironmentStrings.c

package info (click to toggle)
freerdp2 2.3.0%2Bdfsg1-2%2Bdeb11u1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 27,060 kB
  • sloc: ansic: 330,648; xml: 1,676; cpp: 821; sh: 748; python: 638; perl: 231; lisp: 120; makefile: 86
file content (30 lines) | stat: -rw-r--r-- 735 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

#include <stdio.h>
#include <winpr/crt.h>
#include <winpr/tchar.h>
#include <winpr/environment.h>

int TestEnvironmentMergeEnvironmentStrings(int argc, char* argv[])
{
#ifndef _WIN32
	TCHAR* p;
	size_t length;
	LPTCH lpszEnvironmentBlock;
	LPTCH lpsz2Merge = "SHELL=123\0test=1\0test1=2\0DISPLAY=:77\0\0";
	LPTCH lpszMergedEnvironmentBlock;
	lpszEnvironmentBlock = GetEnvironmentStrings();
	lpszMergedEnvironmentBlock = MergeEnvironmentStrings(lpszEnvironmentBlock, lpsz2Merge);
	p = (TCHAR*)lpszMergedEnvironmentBlock;

	while (p[0] && p[1])
	{
		printf("%s\n", p);
		length = strlen(p);
		p += (length + 1);
	}

	FreeEnvironmentStrings(lpszMergedEnvironmentBlock);
	FreeEnvironmentStrings(lpszEnvironmentBlock);
#endif
	return 0;
}