Hi, It seems that printcmd is failing and never creating the pipe.
When I set: printcmd "cat > /tmp/screen.print" and print this output: > ^[[1;9H.R^[[24;1H^[[0K>Printing Receipt for the LAST Sale^[[5i^M > ^[!)Super Test Market^[!^A^M > ^M > XXXXXXXXXXXXXXX^M > YYYYYYYYYYYY^M > ZZZZZZZZZZ^M > AAAAAAAABBBBBBBBB^M > ^M > Wed Nov 28, 2012 at 11:34 AM #: 9 0^M > ^M > ^M > ^[! DELI:^[!^A^M > FIVE CHEESE PIZZA 1 $7.99 T L^M > ^M > SUBTOTAL : $7.99^M > TAXABLE : $7.99 TAX: $0.56^M > TOTAL DUE : ^[!) $8.55^[!^A^M > ^M > Item Count : 1^M > ^M > Sale#: 3^M > ^M > Cash : $8.55^M > ^[!)$7.99^[!^A (100%) of the Items purchased^M > came from LOCAL sources.^[! ^M > ^M > Order Everything But the Turkey from our^M > deli & relax this Thanksgiving.^[!^A^M > ^M > T H A N K Y O U^M > ^M > ^M > ^M > ^M > ^M > ^M > ^M > ^M > ^[m^[[4i^[[24;1H^[[0K^[[1;9H ^[[1;9H The display reads: > Printing Receipt for the LAST Sale > ey from our > deli & relax this Thanksgiving. The output "ey from our" is right around the 512 byte marker for the print input. In other words, starting at ^[[5i and ending at ^[[4i equals approximately 512 bytes. From looking at the source I see that MAXSTR is 512 bytes and PrintFlush() is called. > PrintFlush() > { > display = curr->w_pdisplay; > if (display && printcmd) > { > char *bp = curr->w_string; > int len = curr->w_stringp - curr->w_string; > int r; > while (len && display->d_printfd >= 0) > { > r = write(display->d_printfd, bp, len); > if (r <= 0) > { > WMsg(curr, errno, "printing aborted"); > close(display->d_printfd); > display->d_printfd = -1; > break; > } > bp += r; > len -= r; > } > } > ….. My limited knowledge of C leads me to WMsg and LMsg, which should be displayed on the caption. However, nothing is displayed indicating failure or success. I've tried logging and verbose mode. I'm not sure why the printcmd is failing. What else can I check? Thank you! Caylan
_______________________________________________ screen-users mailing list screen-users@gnu.org https://lists.gnu.org/mailman/listinfo/screen-users