96 if ((*
src ==
' ' || *
src ==
'\t') && !in_quotes)
99 while (*
src ==
' ' || *
src ==
'\t')
src++;
108 else if (*
src ==
'\\')
113 else if (*
src ==
'"')
115 if ((bcount & 1) == 0)
122 if (in_quotes && *
src ==
'"') *
dst++ = *
src++;
124 in_quotes = !in_quotes;
126 else in_quotes = !in_quotes;
134 dst -= bcount / 2 + 1;
153static CHAR **cmdline_to_argvA(
const CHAR *
src,
int *ret_argc )
164 if ((*
src ==
' ' || *
src ==
'\t') && !in_quotes)
167 while (*
src ==
' ' || *
src ==
'\t')
src++;
176 else if (*
src ==
'\\')
181 else if (*
src ==
'"')
183 if ((bcount & 1) == 0)
190 if (in_quotes && *
src ==
'"') *
dst++ = *
src++;
192 in_quotes = !in_quotes;
194 else in_quotes = !in_quotes;
202 dst -= bcount / 2 + 1;
376 wchar_t *wstr =
malloc(
len*
sizeof (
wchar_t));
425 TRACE(
"winver %08x winmajor %08x winminor %08x osver %08x\n",
482 is_expandable =
FALSE;
485 is_expandable =
TRUE;
498 if(
data.cFileName[0]==
'.' && (
data.cFileName[1]==
'\0' ||
499 (
data.cFileName[1]==
'.' &&
data.cFileName[2]==
'\0')))
528 size += (args_no+1)*
sizeof(
wchar_t*);
537 int expand_wildcards,
int *new_mode)
539 TRACE(
"(%p,%p,%p,%d,%p).\n",
argc, wargv, wenvp, expand_wildcards, new_mode);
541 if (expand_wildcards) {
551 expand_wildcards = 0;
554 if (!expand_wildcards) {
580 int expand_wildcards,
int *new_mode)
582 TRACE(
"(%p,%p,%p,%d,%p).\n",
argc,
argv, envp, expand_wildcards, new_mode);
584 if (expand_wildcards) {
594 expand_wildcards = 0;
597 if (!expand_wildcards) {
678 TRACE(
"(%d) %s application\n", app_type, app_type == 2 ?
"Gui" :
"Console");
745 static char *narrow_command_line;
748 if (narrow_command_line)
749 return narrow_command_line;
752 while (*
s && *
s !=
' ' && *
s !=
'\t')
756 while (*
s && *
s++ !=
'"')
761 while (*
s ==
' ' || *
s ==
'\t')
764 return narrow_command_line =
s;
772 static wchar_t *wide_command_line;
775 if (wide_command_line)
776 return wide_command_line;
779 while (*
s && *
s !=
' ' && *
s !=
'\t')
783 while (*
s && *
s++ !=
'"')
788 while (*
s ==
' ' || *
s ==
'\t')
791 return wide_command_line =
s;
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
unsigned int CRTDLL__cpumode_dll
unsigned int CRTDLL__baseminor_dll
void __GetMainArgs(int *argc, char ***argv, char ***envp, int expand_wildcards)
unsigned int CRTDLL__basemajor_dll
unsigned int CRTDLL__baseversion_dll
unsigned int CRTDLL__osmode_dll
#define INVALID_HANDLE_VALUE
#define HeapFree(x, y, z)
#define WideCharToMultiByte
#define MultiByteToWideChar
HANDLE WINAPI FindFirstFileW(IN LPCWSTR lpFileName, OUT LPWIN32_FIND_DATAW lpFindFileData)
BOOL WINAPI FindClose(HANDLE hFindFile)
BOOL WINAPI FindNextFileW(IN HANDLE hFindFile, OUT LPWIN32_FIND_DATAW lpFindFileData)
DWORD WINAPI GetModuleFileNameW(HINSTANCE hModule, LPWSTR lpFilename, DWORD nSize)
DWORD WINAPI GetModuleFileNameA(HINSTANCE hModule, LPSTR lpFilename, DWORD nSize)
BOOL WINAPI GetVersionExW(IN LPOSVERSIONINFOW lpVersionInformation)
LPWSTR WINAPI GetCommandLineW(void)
LPSTR WINAPI GetCommandLineA(void)
DWORD WINAPI GetVersion(void)
unsigned int *CDECL __p__osver(void)
wchar_t * msvcrt_wstrdupa(const char *str)
unsigned int MSVCRT__winmajor
wchar_t ***CDECL __p__wenviron(void)
wchar_t ** MSVCRT___wargv
unsigned int MSVCRT__osplatform
unsigned int MSVCRT___unguarded_readlc_active
int CDECL _get_osver(int *value)
int *CDECL __p__fmode(void)
unsigned int *CDECL __p__winver(void)
unsigned int MSVCRT___setlc_active
wchar_t ** MSVCRT___winitenv
char **CDECL __p__pgmptr(void)
unsigned int MSVCRT__osver
unsigned int *CDECL __p__winminor(void)
static char ** build_argv(WCHAR **wargv)
unsigned int MSVCRT__commode
WCHAR **CDECL __p__wpgmptr(void)
void msvcrt_free_args(void)
int(CDECL * _INITTERM_E_FN)(void)
char **CDECL __p__acmdln(void)
int CDECL _get_wpgmptr(WCHAR **p)
wchar_t **CDECL __p__wcmdln(void)
int CDECL __wgetmainargs(int *argc, wchar_t ***wargv, wchar_t ***wenvp, int expand_wildcards, int *new_mode)
int CDECL _set_fmode(int mode)
static WCHAR ** cmdline_to_argv(const WCHAR *src, int *ret_argc)
unsigned int *CDECL __p__commode(void)
static int build_expanded_wargv(int *argc, wchar_t **argv)
int CDECL _get_pgmptr(char **p)
unsigned int CDECL ___setlc_active_func(void)
int CDECL _get_osplatform(int *pValue)
int CDECL _get_fmode(int *mode)
int *CDECL __p___argc(void)
int CDECL _get_winminor(int *value)
unsigned int MSVCRT__winminor
void CDECL __set_app_type(int app_type)
wchar_t ***CDECL __p___wargv(void)
int CDECL _initterm_e(_INITTERM_E_FN *table, _INITTERM_E_FN *end)
char ***CDECL __p___argv(void)
void msvcrt_init_args(void)
int CDECL __getmainargs(int *argc, char ***argv, char ***envp, int expand_wildcards, int *new_mode)
unsigned int *CDECL ___unguarded_readlc_active_add_func(void)
wchar_t ** MSVCRT__wenviron
char ***CDECL __p__environ(void)
char ***CDECL __p___initenv(void)
static WCHAR ** initial_wargv
unsigned int MSVCRT__winver
wchar_t ***CDECL __p___winitenv(void)
void(CDECL * _INITTERMFUN)(void)
unsigned int *CDECL __p__winmajor(void)
int CDECL _get_winmajor(int *value)
void CDECL _initterm(_INITTERMFUN *start, _INITTERMFUN *end)
static wchar_t ** wargv_expand
int env_init(BOOL unicode, BOOL modif)
int CDECL _set_new_mode(int mode)
_ACRTIMP errno_t __cdecl _configure_narrow_argv(_crt_argv_mode)
_ACRTIMP errno_t __cdecl _configure_wide_argv(_crt_argv_mode)
_ACRTIMP char *__cdecl _get_narrow_winmain_command_line(void)
_ACRTIMP wchar_t **__cdecl _get_initial_wide_environment(void)
_ACRTIMP int __cdecl _initialize_narrow_environment(void)
_ACRTIMP char **__cdecl _get_initial_narrow_environment(void)
_ACRTIMP int __cdecl _initialize_wide_environment(void)
_ACRTIMP wchar_t *__cdecl _get_wide_winmain_command_line(void)
_ACRTIMP size_t __cdecl wcslen(const wchar_t *)
_ACRTIMP wchar_t *__cdecl _wcsdup(const wchar_t *) __WINE_DEALLOC(free) __WINE_MALLOC
_ACRTIMP size_t __cdecl strlen(const char *)
#define MSVCRT_CHECK_PMT(x)
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLfloat GLfloat GLfloat GLfloat h
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define memcpy(s1, s2, n)
struct task_struct * current
static DWORD LPDWORD reslen
ULONG dwOSVersionInfoSize
struct _OSVERSIONINFOW OSVERSIONINFOW