*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/bin/psql/Attic/psql.c,v 1.156 1998/08/27 13:25:18 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/Attic/psql.c,v 1.157 1998/08/29 04:05:39 momjian Exp $
*
*-------------------------------------------------------------------------
*/
#define PROMPT_READY '='
#define PROMPT_CONTINUE '-'
#define PROMPT_COMMENT '*'
-#define PROMPT_QUOTE '\''
+#define PROMPT_SINGLEQUOTE '\''
+#define PROMPT_DOUBLEQUOTE '"'
/* Backslash command handling:
* 0 - send currently constructed query to backend (i.e. we got a \g)
/* We've reached the end of our command input. */
bool success;
- bool in_quote;
+ char in_quote; /* == 0 for no in_quote */
bool was_bslash; /* backslash */
int paren_level;
char *query_start;
{
if (interactive && !pset->quiet)
{
- if (in_quote)
- pset->prompt[strlen(pset->prompt) - 3] = PROMPT_QUOTE;
+ if (in_quote && in_quote == PROMPT_SINGLEQUOTE)
+ pset->prompt[strlen(pset->prompt) - 3] = PROMPT_SINGLEQUOTE;
+ else if (in_quote && in_quote == PROMPT_DOUBLEQUOTE)
+ pset->prompt[strlen(pset->prompt) - 3] = PROMPT_DOUBLEQUOTE;
else if (xcomment != NULL)
pset->prompt[strlen(pset->prompt) - 3] = PROMPT_COMMENT;
else if (query[0] != '\0' && !querySent)
was_bslash = true;
/* inside a quote? */
- if (in_quote && (line[i] != '\'' || was_bslash))
+ if (in_quote && (line[i] != in_quote || was_bslash))
/* do nothing */ ;
else if (xcomment != NULL) /* inside an extended
* comment? */
line[i] = '\0'; /* remove comment */
break;
}
- else if (line[i] == '\'')
- in_quote ^= 1;
+ else if (in_quote && line[i] == in_quote)
+ in_quote = false;
+ else if (!in_quote && (line[i] == '\'' || line[i] == '"'))
+ in_quote = line[i];
/* semi-colon? then send query now */
else if (!paren_level && line[i] == ';')
{
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: c.h,v 1.43 1998/08/25 21:04:41 scrappy Exp $
+ * $Id: c.h,v 1.44 1998/08/29 04:05:41 momjian Exp $
*
*-------------------------------------------------------------------------
*/
* Example:
* extern const Version RomVersion;
*/
+#ifndef WIN32
#define const /* const */
+#endif
/*
* signed --
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: pqcomm.h,v 1.27 1998/08/22 04:24:18 momjian Exp $
+ * $Id: pqcomm.h,v 1.28 1998/08/29 04:05:43 momjian Exp $
*
*-------------------------------------------------------------------------
*/
#include
#include
+#ifdef WIN32
+#include
+#else
#include
#include
#include
+#endif
#include "c.h"
-
/* Define a generic socket address type. */
typedef union SockAddr
{
struct sockaddr sa;
struct sockaddr_in in;
+#ifndef WIN32
struct sockaddr_un un;
+#endif
} SockAddr;
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: libpq-fe.h,v 1.38 1998/08/17 03:50:40 scrappy Exp $
+ * $Id: libpq-fe.h,v 1.39 1998/08/29 04:05:45 momjian Exp $
*
*-------------------------------------------------------------------------
*/
#include
/* these wouldn't need to be included if PGSockAddr weren't exported: */
+#ifdef WIN32
+#include
+#else
#include
#include
#include
+#endif
/* ----------------
* include stuff common to fe and be
* ----------------
{
struct sockaddr sa;
struct sockaddr_in in;
+#ifndef WIN32
struct sockaddr_un un;
+#endif
} PGSockAddr;
/* large-object-access data ... allocated only if large-object code is used.
!ENDIF
CPP=cl.exe
+RSC=rc.exe
OUTDIR=.\Release
INTDIR=.\Release
-@erase "$(INTDIR)\fe-lobj.obj"
-@erase "$(INTDIR)\fe-misc.obj"
-@erase "$(INTDIR)\fe-print.obj"
- -@erase "$(OUTDIR)\libpqdll.obj"
- -@erase "$(INTDIR)\vc50.idb"
+ -@erase "$(OUTDIR)\libpqdll.obj"
-@erase "$(OUTDIR)\libpq.lib"
- -@erase "$(OUTDIR)\libpq.dll"
+ -@erase "$(OUTDIR)\libpq.dll"
+ -@erase "$(OUTDIR)\libpq.res"
+ -@erase "vc50.pch"
+ -@erase "$(OUTDIR)\libpq.pch"
+ -@erase "$(OUTDIR)\libpqdll.exp"
+ -@erase "$(OUTDIR)\libpqdll.lib"
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
"$(INTDIR)\fe-misc.obj" \
"$(INTDIR)\fe-print.obj"
+RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libpq.res"
+
LINK32=link.exe
LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\
advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib wsock32.lib\
/implib:"$(OUTDIR)\libpqdll.lib" /def:libpqdll.def
LINK32_OBJS= \
"$(INTDIR)\libpqdll.obj" \
- "$(OUTDIR)\libpq.lib"
+ "$(OUTDIR)\libpq.lib" \
+ "$(OUTDIR)\libpq.res"
"$(OUTDIR)\libpq.lib" : "$(OUTDIR)" $(DEF_FILE) $(LIB32_OBJS)
$(LIB32_FLAGS) $(DEF_FLAGS) $(LIB32_OBJS)
<<
-"$(OUTDIR)\libpq.dll" : "$(OUTDIR)" "$(OUTDIR)\libpqdll.obj" "$(INTDIR)\libpqdll.obj"
+"$(INTDIR)\libpq.res" : "$(INTDIR)" libpq.rc
+ $(RSC) $(RSC_PROJ) libpq.rc
+
+
+"$(OUTDIR)\libpq.dll" : "$(OUTDIR)" "$(OUTDIR)\libpqdll.obj" "$(INTDIR)\libpqdll.obj" "$(INTDIR)\libpq.res"
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<