From 893b0ab9886744db52ec4ab3238567b4a67dfeb0 Mon Sep 17 00:00:00 2001 From: Jack Jansen Date: Tue, 9 Oct 2001 23:09:00 +0000 Subject: [PATCH] Fixed the embedding demo to correctly show the use of overriding the console writer. --- Mac/Demo/embed/demo.c | 30 +++++++++++++++++++----------- Mac/Demo/embed/embeddemo.prj | Bin 51653 -> 78479 bytes 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/Mac/Demo/embed/demo.c b/Mac/Demo/embed/demo.c index 7d450f165f36..a022f94fa830 100644 --- a/Mac/Demo/embed/demo.c +++ b/Mac/Demo/embed/demo.c @@ -1,35 +1,43 @@ /* Example of embedding Python in another program */ #include "Python.h" -#ifdef macintosh #include "macglue.h" -#endif /* macintosh */ static char *argv0; +long my_writehandler(char *buf, long count) +{ + long mycount; + unsigned char mybuf[255]; + + mycount = count; + if (mycount > 255 ) mycount = 255; + mybuf[0] = (unsigned char)mycount; + strncpy((char *)mybuf+1, buf, mycount); + DebugStr(mybuf); + return count; +} + main(argc, argv) int argc; char **argv; { -#ifdef macintosh /* So the user can set argc/argv to something interesting */ argc = ccommand(&argv); -#endif /* Save a copy of argv0 */ argv0 = argv[0]; - /* Initialize the Python interpreter. Required. */ -#ifdef macintosh /* If the first option is "-q" we don't open a console */ if ( argc > 1 && strcmp(argv[1], "-q") == 0 ) { PyMac_SetConsoleHandler(PyMac_DummyReadHandler, PyMac_DummyWriteHandler, PyMac_DummyWriteHandler); -/* freopen("demo output", "w", stdout); */ - } + } else + if ( argc > 1 && strcmp(argv[1], "-d") == 0 ) { + PyMac_SetConsoleHandler(PyMac_DummyReadHandler, my_writehandler, + my_writehandler); + } + /* Initialize the Python interpreter. Required. */ PyMac_Initialize(); -#else - Py_Initialize(); -#endif /* Define sys.argv. It is up to the application if you want this; you can also let it undefined (since the Python diff --git a/Mac/Demo/embed/embeddemo.prj b/Mac/Demo/embed/embeddemo.prj index e519b5c8fa86b56eb20c56beb9594fa904d6b2e3..778755a65b99b2ca2ab5f86f976ee8600ab5d0cc 100644 GIT binary patch delta 5038 zc-qxidu&tZ6~Ev0D=(Yaah$|Xz#-*5*@RIBfdVG)kbucjQbH5rI8LyMAB`QB6}lu) zZDnOJ_jHd=Euv%6)OM7i%P5dN5(s43R34qSvaTv+6BUdV24fRrL+pJ1zTBIHw9@v+ zrd{dWdwhQ1^LNhoI6e)ky;sz^-f*}>5CoMVkl6y685YQ_ZwW%mU9@!_&YhhKN418Y zvO2fj?Fsoh1YfYl*V^g}hV5>5aZ#0LtH)j(4hB7;R(rKSViXk2nsoYO zs<}JE0iQP}t=n}&jJu0wbYZyk3PRfZf{-rI&_T(fL4{AYkdpZ3!0rs&V@X6H!stVY z{2>WDMF}&bXoRtkMiijeHm!gpFj_`U%b;ixRihN}dRpl1H^Vng^JdW&3PgONB%u&7 z(T<=+(JB4HK2ttKn$<9pQBkTctE?`i<>;68!hdV|H;I3B%Fq&HC1b`)U@&)Dh9JyG zeI@qpVFMKA$6Z$VD5E;=%8;Jx&=R<9Sphfm9N4)5hBH4y9PsDN0^)>p%bQS?*8*S5 zu+I22Qpo5Wr0rQ%qJ_Dr+TS8nhGM?XHjmebKcsa9#|f01m*uo$mCY!AlmN;W6uSI_ z&}&|r6GAPF5$ludBgT%6O48qQQ`LGhxr zqWDnSU~%T&xZ41K!P$PvhORl7PU$9QSd!;8j820+a3jxIh-6Kn!Cc(oiAH@v3;#3wDA`;+RAa=%i&p8J>T&u~9e{Q&hh*MCM= za@@5SeU&5y+HImqtU{BM!D1Z?=wWCI7to5-C|Crz${5eWIqrm1;(4H~F2whfizX+K1?UnJNzx3o=(4y`cIs=Q;n&h(&Op%aOu(gjVQI~zLw5w9YK+%Z!Qw0ss_6Xb_Vj{ zmEaphmDu>D<^nsBmOe*_6lhFVNvl0ZEfH~=WkhP;bxDK|ZGS}Pp2>R1uU}D1zkYFt z@&DbqRSh$>=waN(zq5MCNQkme)5i$sD{biSR7lF$rlDuld>HJvOZyHkW&Fh5!+e?S zkOnH>BT|LOtR+dfTW1kzYt0c+Dtdf}C}tArLS+e7DL6yJ#~@v*TqF~G1qLcpq;DJ~ z6w;)N26mC?@OwSkc0f2pDOU}oH1@L!_jv;X!1B>WFZ z#Pv9R#-y7G?_tzp;-Q%KAJRS@{Qdjs{V9oV{}ZG5C8!Enb=OwoanZdOS@;Kmwul7{ zhaNomcr6<4krpyQHe_v!Tw?H%Low(a!JhW5~SyK#WtLeTCXZ_jFj3xgKx zBll@4!dBW$9#TQh?PXe3PML$|ZCLuI0A8C<|RCK~Z6 ztj^9a)9sV5hwDI2TdW%o;Uu#eT>e{u-GS+~YZwX<&fG<7Bw&^BH0lc&+!zKA!kf0C zhtdg-Ea%x*5^^b z$lxZ*bP(XsLuX{@Ybc4-B? zioG4hi>XS>sx`fa_7d)|Cb)ob7ImMM_jVigGCu$B0r@%7^MUL+Q~e<76?}EP1%(J_ zt(0TMwEU~6S26gw4?GCxZI@%klt+oE=1Xr4#1S4uLdkm!uDOQxH4M(X0)q&*1!V3` z+i60`FD9qT;TCQDgdD~u6Ag=6-uRP{KZ5XCdLL!5o;sOdlTK`bbqJ4alw;2LAw6l= zGx!%#=o`t(Sucm2@i#*>_!;_38yp@n<7NHrSr~MC5(V^c{8ULD-a*G`k`i{qrfemR zc=spR9Sc%JxmQUkF20SY#`~mTwKGMEQW>5b@m6DtE)2q6Pb-XIBny0XaZojDHHGf^AFnabCCC9lpEHkQqCzi-}ShDos zoJ^_yqY^p!A;Kkv(l7o^PJ~E$zd~toqns3x^pBBJ&gfyMoFI{$pu*^D*W_f0mqr5GNp!;ef+-^;a`@Qd{Y1b delta 2547 zc-oDYe^69a6vyvf_6N#JyKk4pfn5brLw@-q70e$%fEy}_KTxp|4N=lqA=%UkY!NUg zb;R}lv1y~BGdY7iXO*&`K<2{!C>A}5o-shfs z-?`_0&xN+1j8{aIdwp$f4Pz{dF`mj;cM)TkeT+q~0#<&`of;z&m&D4Z&42M=>1*PC zU$nH29cv7F%e>{_v5v73t&CY2db2hUZ@R--Xa7tqZ~7UG)@I;Y(DE2FEMUyY)OUC| zn*sd^gV?KNi{1faN{RvAp;@4DXeMZ8dj55saI+EF6x&g9sS+kIIpoX9P2?(Psf5(~uFi8&(OJ%^`?R(FB;(Y;@M z5|<(Vj7t&;uG7I%i+IQ39IdYh$>QM;A>yLJlON1?WdD!2)F%oXr@%~dWBdYxJdxSS z#YIn?W5^x`A5k3dfmARPm&xTOj=@-m2OuuEYQeBCX>vQ6V0HBSaGE4Gg-0CX_k-2Pcj6(*AJz}TKWa(YGIM6@l6H&+~TsxY35I? zudUipRE&irjgQJ-pgU@eH7L&s}CB3rEQ_R9^Ni5eRabq zrleWLw`mOl-i`A0)%&-yh-VaVV-xV2NbW3zEF#|$$rX?|O9j3ulE*iq>}ma|+d8j) z9#7uq2!CMcKwM8KJ(V8_IHKWYhtFSE!-lGtIhvre`usJukvty#Y~a5sl5g=s0MmW` z>S5p63;`H2e0BAkBDtdnx~9^=qIy3w^xlA%1a*fm>N|{>aDf7?esAUkbIP@hpR9R!FAt`2o*cdVmcQ>`Zn3Sv|m(*Y&G%Azmas z#Ph4co=kkv8i;Q+aqo2iQ;3(m0^PgB*J9SEs_WmwHR}T50NJbXGK~hF11E!(CS1eg zeu{YMB)Dg6VQ#m-2Vgq!vROK>tOGEE`08SiMiTLzn6R0|*Pvu5k+yp_JlbqkJ0C!2 zqzTquuyfQ%yHHa!;l>%TXAxhAqVFUB3e?Wi#9#1g+Oa3$+OySlu4wDn&mRYS4z$p= z3|^VYE<#YI!2&bry6wIh`aOeZ1(YwSpu&YVWPEFbws|E6PiZdk?fW!cD>LFyA;eqL zb^qgc0pt>YW40diqb>AD5}&rkVY!D-Ny+;VNInhJ?9udY@54fShWN>qTGo|gRR9Wz zpW3cvU8y()pinL3@3f>V88^W$QV(OlRpy$Bg+1yzVWQls^H0qg9 zuz;4T{GgtR!>FfaDnFuSLK(Fh?B&GI7i$%*xbc=KBi=bmtLSC+@8N$4wt@yOOwdYN inS?1_sqV}jF6nTf*YKEDss5j96|HPL8UF7Ko__&HMB7jR -- 2.47.3