Mercurial > controlcenter
changeset 75:d5b0c9057be2
Win: Remove winmain.c, it is no longer necessary with DW 3.2.
author | Brian Smith <brian@dbsoft.org> |
---|---|
date | Thu, 25 Mar 2021 17:35:22 -0500 |
parents | 74f5e1844b8c |
children | 2db6c35f7652 |
files | cc.c makefile.vc winmain.c |
diffstat | 3 files changed, 2 insertions(+), 119 deletions(-) [+] |
line wrap: on
line diff
--- a/cc.c Mon Mar 08 15:25:43 2021 -0600 +++ b/cc.c Thu Mar 25 17:35:22 2021 -0500 @@ -1544,7 +1544,7 @@ } } -int main(int argc, char *argv[]) +int dwmain(int argc, char *argv[]) { current_font = strdup(DEFFONT);
--- a/makefile.vc Mon Mar 08 15:25:43 2021 -0600 +++ b/makefile.vc Thu Mar 25 17:35:22 2021 -0500 @@ -63,7 +63,7 @@ DLLLINKFLAGS = -dll DEFFILE = cc.def -OBJS = cc.obj statswin.obj winmain.obj +OBJS = cc.obj statswin.obj all: cc.exe
--- a/winmain.c Mon Mar 08 15:25:43 2021 -0600 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,117 +0,0 @@ -/* Dynamic Windows stub file to allow Win32 applications - * to use the main() entry point instead of WinMain(). - * - * (C) 2000-2012 Brian Smith <brian@dbsoft.org> - */ - -#include <windows.h> -#include <stdlib.h> -#include <string.h> -#include <stdio.h> -#include <process.h> - -#ifndef NODW -void Win32_Set_Instance(HINSTANCE hInstance); -#endif - -char **_convertargs(int *count, char *start, HINSTANCE DWInstance) -{ - char *tmp, *argstart, **argv; - int loc = 0, inquotes = 0; - - (*count) = 1; - - tmp = start; - - /* Count the number of entries */ - if(*start) - { - (*count)++; - - while(*tmp) - { - if(*tmp == '"' && inquotes) - inquotes = 0; - else if(*tmp == '"' && !inquotes) - inquotes = 1; - else if(*tmp == ' ' && !inquotes) - { - /* Push past any white space */ - while(*(tmp+1) == ' ') - tmp++; - /* If we aren't at the end of the command - * line increment the count. - */ - if(*(tmp+1)) - (*count)++; - } - tmp++; - } - } - - argv = (char **)malloc(sizeof(char *) * ((*count)+1)); - argv[0] = malloc(260); - GetModuleFileNameA(DWInstance, argv[0], 260); - - argstart = tmp = start; - - if(*start) - { - loc = 1; - - while(*tmp) - { - if(*tmp == '"' && inquotes) - { - *tmp = 0; - inquotes = 0; - } - else if(*tmp == '"' && !inquotes) - { - argstart = tmp+1; - inquotes = 1; - } - else if(*tmp == ' ' && !inquotes) - { - *tmp = 0; - argv[loc] = _strdup(argstart); - - /* Push past any white space */ - while(*(tmp+1) == ' ') - tmp++; - - /* Move the start pointer */ - argstart = tmp+1; - - /* If we aren't at the end of the command - * line increment the count. - */ - if(*(tmp+1)) - loc++; - } - tmp++; - } - if(*argstart) - argv[loc] = _strdup(argstart); - } - argv[loc+1] = NULL; - return argv; -} - -/* Protoype for the application entrypoint */ -int main(int argc, char **argv); - -/* Ok this is a really big hack but what the hell ;) */ -int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) -{ - char **argv; - int argc; - -#ifndef NODW - Win32_Set_Instance(hInstance); -#endif - - argv = _convertargs(&argc, lpCmdLine, hInstance); - - return main(argc, argv); -}