> >Hi, it's me again! > >Last night I try to hunt down the >"PDF Writer crash on filepanel cancellation" bug. > >A print_server transport add-on should export two functions: >- BDataIO * init_transport(BMessage * msg); >- void exit_transport(void); > >BeOS R5.0.x built-in "Print To File" transport add-on don't return >a NULL BDataIO * if you cancel the filepanel. >But I doesn't seem to be a valid BDataIO * even, because >a BDataIO::Write() on it crash it immediatly! >In PDF Writer case, it crash in same place, at first PDFWriter::WriteData() >call. > >Built-in BeOS R5.0.x print drivers seem to know something we don't >(yet?!) here, because they don't crash nor they seem to start print job * >rendition* when user cancel the filepanel. But they make a difference >with a NULL BDataIO * returned value, as they all show a error alert box >in this case. > >I've print out the msg after being pass to init_transport, >but the add-on don't modify it. >Same thing for job file attributs... > >So, currently I'm lost :-( Hmm, I don't know if this is the official way, but I have found a possibility to work around that problem (see repository). http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/open-beos/print_kit/source/add -ons/drivers/PDF/source/PrinterDriver.cpp - Michael