75 lines
2.3 KiB
Plaintext
75 lines
2.3 KiB
Plaintext
$NetBSD: patch-aa,v 1.3 2014/01/09 15:45:18 jperkin Exp $
|
|
|
|
cfmakeraw compatability for SunOS.
|
|
|
|
--- lpstyl.c.orig 1999-03-31 09:05:21.000000000 +0000
|
|
+++ lpstyl.c
|
|
@@ -443,7 +443,15 @@ int main(int argc, char **argv)
|
|
struct termios t;
|
|
|
|
tcgetattr(1, &t);
|
|
+#ifdef __sun
|
|
+ t.c_iflag &= ~(IMAXBEL|IGNBRK|BRKINT|PARMRK|ISTRIP|INLCR|IGNCR|ICRNL|IXON);
|
|
+ t.c_oflag &= ~OPOST;
|
|
+ t.c_lflag &= ~(ECHO|ECHONL|ICANON|ISIG|IEXTEN);
|
|
+ t.c_cflag &= ~(CSIZE|PARENB);
|
|
+ t.c_cflag |= CS8;
|
|
+#else
|
|
cfmakeraw(&t);
|
|
+#endif
|
|
cfsetispeed(&t, B57600);
|
|
cfsetospeed(&t, B57600);
|
|
if(tcsetattr(1, TCSAFLUSH, &t) == -1)
|
|
@@ -1015,10 +1023,13 @@ size_t readFileScanline(char *bufK, char
|
|
if((i & 0x03) == 0)
|
|
{
|
|
/* write the output */
|
|
- *((unsigned char *)bufK)++ = cmyk & 0x000000FF; cmyk >>= 8;
|
|
- *((unsigned char *)bufY)++ = cmyk & 0x000000FF; cmyk >>= 8;
|
|
- *((unsigned char *)bufM)++ = cmyk & 0x000000FF; cmyk >>= 8;
|
|
- *((unsigned char *)bufC)++ = cmyk & 0x000000FF;
|
|
+ *bufK++ = (char)(cmyk & 0x000000FF);
|
|
+ cmyk >>= 8;
|
|
+ *bufY++ = (char)(cmyk & 0x000000FF);
|
|
+ cmyk >>= 8;
|
|
+ *bufM++ = (char)(cmyk & 0x000000FF);
|
|
+ cmyk >>= 8;
|
|
+ *bufC++ = (char)(cmyk & 0x000000FF);
|
|
cmyk = 0;
|
|
}
|
|
}
|
|
@@ -1031,10 +1042,10 @@ size_t readFileScanline(char *bufK, char
|
|
}
|
|
|
|
/* write the final part */
|
|
- *((unsigned char *)bufK)++ = cmyk & 0x000000FF; cmyk >>= 8;
|
|
- *((unsigned char *)bufY)++ = cmyk & 0x000000FF; cmyk >>= 8;
|
|
- *((unsigned char *)bufM)++ = cmyk & 0x000000FF; cmyk >>= 8;
|
|
- *((unsigned char *)bufC)++ = cmyk & 0x000000FF;
|
|
+ *bufK++ = (char)(cmyk & 0x000000FF); cmyk >>= 8;
|
|
+ *bufY++ = (char)(cmyk & 0x000000FF); cmyk >>= 8;
|
|
+ *bufM++ = (char)(cmyk & 0x000000FF); cmyk >>= 8;
|
|
+ *bufC++ = (char)(cmyk & 0x000000FF);
|
|
}
|
|
else
|
|
{
|
|
@@ -1327,7 +1338,7 @@ void sendEncodedData(unsigned char *buff
|
|
|
|
if(verbose)
|
|
{
|
|
- fprintf(stderr, "%s: Sending encoded data (0x%x bytes).\n",
|
|
+ fprintf(stderr, "%s: Sending encoded data (0x%zx bytes).\n",
|
|
ProcName, size);
|
|
}
|
|
begin[0] = 'G';
|
|
@@ -1827,7 +1838,8 @@ void waitStatus(int stat, int canHandleP
|
|
static int inputBack = -1;
|
|
size_t inputRead(void *buffer, size_t size)
|
|
{
|
|
- size_t result = 0, len = 0;
|
|
+ size_t result = 0;
|
|
+ ssize_t len = 0;
|
|
|
|
if((inputBack != -1) && (size > result))
|
|
{
|