Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > bb8c72b3b17c42b1080b738133b50ed0 > files > 3

pdftk-1.44-3.fc15.src.rpm

diff -rupN pdftk-1.44-dist.old/pdftk/attachments.cc pdftk-1.44-dist/pdftk/attachments.cc
--- pdftk-1.44-dist.old/pdftk/attachments.cc	2010-10-27 15:16:19.000000000 -0400
+++ pdftk-1.44-dist/pdftk/attachments.cc	2011-01-09 15:19:32.000000000 -0500
@@ -56,7 +56,10 @@
 
 #include "com/lowagie/text/Document.h"
 #include "com/lowagie/text/Rectangle.h"
+// Ewww, PdfName has a field called NULL.
+#undef NULL
 #include "com/lowagie/text/pdf/PdfName.h"
+#define NULL __null
 #include "com/lowagie/text/pdf/PdfString.h"
 #include "com/lowagie/text/pdf/PdfNumber.h"
 #include "com/lowagie/text/pdf/PdfArray.h"
@@ -151,8 +154,8 @@ TK_Session::attach_files
 
 					itext::Rectangle* crop_box_p= 
 						input_reader_p->getCropBox( m_input_attach_file_pagenum );
-					float corner_top= crop_box_p->top()- margin;
-					float corner_left= crop_box_p->left()+ margin;
+					float corner_top= crop_box_p->getTop()- margin;
+					float corner_left= crop_box_p->getLeft()+ margin;
 
 					itext::PdfArray* annots_p= (itext::PdfArray*)
 						input_reader_p->getPdfObject( page_p->get( itext::PdfName::ANNOTS ) );
@@ -190,11 +193,11 @@ TK_Session::attach_files
 								string filename= drop_path(*vit);
 
 								// wrap our location over page bounds, if needed
-								if( crop_box_p->right() < corner_left+ trans ) {
-									corner_left= crop_box_p->left()+ margin;
+								if( crop_box_p->getRight() < corner_left+ trans ) {
+									corner_left= crop_box_p->getLeft()+ margin;
 								}
-								if( corner_top- trans< crop_box_p->bottom() ) {
-									corner_top= crop_box_p->top()- margin;
+								if( corner_top- trans< crop_box_p->getBottom() ) {
+									corner_top= crop_box_p->getTop()- margin;
 								}
 
 								itext::Rectangle* annot_bbox_p= 
diff -rupN pdftk-1.44-dist.old/pdftk/Makefile.Base pdftk-1.44-dist/pdftk/Makefile.Base
--- pdftk-1.44-dist.old/pdftk/Makefile.Base	2010-10-28 17:19:18.000000000 -0400
+++ pdftk-1.44-dist/pdftk/Makefile.Base	2011-01-09 15:24:09.000000000 -0500
@@ -16,7 +16,7 @@
 
 export JAVALIBPATH= ../java
 
-JAVALIB= $(JAVALIBPATH)/java_lib.o
+JAVALIB= $(LIBDIR)/gcj/itext/itext-$(ITEXTVERS).jar.so
 
 ifdef USE_LOCAL_LIBGCJ
 # passed on to next makefile
@@ -29,7 +29,7 @@ endif
 #
 CPPFLAGS+= -DPDFTK_VER=\"1.44\"
 
-all : javalib pdftk
+all : pdftk
 
 javalib :
 	$(MAKE) -f Makefile -iC $(JAVALIBPATH) all
diff -rupN pdftk-1.44-dist.old/pdftk/Makefile.Redhat pdftk-1.44-dist/pdftk/Makefile.Redhat
--- pdftk-1.44-dist.old/pdftk/Makefile.Redhat	2010-09-16 14:23:20.000000000 -0400
+++ pdftk-1.44-dist/pdftk/Makefile.Redhat	2011-01-09 17:00:40.000000000 -0500
@@ -72,9 +72,9 @@ export RMFLAGS= -vf
 # only effects libraries following option on the command line
 #
 #  
-export CPPFLAGS= -DPATH_DELIM=0x2f -DASK_ABOUT_WARNINGS=false -DUNBLOCK_SIGNALS -fdollars-in-identifiers
-export CXXFLAGS= -Wall -Wextra -Weffc++ -O2
-export GCJFLAGS= -Wall -Wextra -O2
+export CPPFLAGS= -DPATH_DELIM=0x2f -DASK_ABOUT_WARNINGS=false -DUNBLOCK_SIGNALS -fdollars-in-identifiers ${CFLAGS} -fpic
+export CXXFLAGS= -Wall -Wextra -Weffc++ -O2 ${CFLAGS} -fpic
+export GCJFLAGS= -Wall -Wextra -O2 ${CFLAGS} -fpic
 export GCJHFLAGS= -force
 export LDLIBS= -lgcj
 
diff -rupN pdftk-1.44-dist.old/pdftk/pdftk.cc pdftk-1.44-dist/pdftk/pdftk.cc
--- pdftk-1.44-dist.old/pdftk/pdftk.cc	2010-10-28 17:18:31.000000000 -0400
+++ pdftk-1.44-dist/pdftk/pdftk.cc	2011-01-09 18:28:28.000000000 -0500
@@ -59,7 +59,10 @@
 
 #include "com/lowagie/text/Document.h"
 #include "com/lowagie/text/Rectangle.h"
+// Ewww, PdfName has a field called NULL.
+#undef NULL
 #include "com/lowagie/text/pdf/PdfName.h"
+#define NULL __null
 #include "com/lowagie/text/pdf/PdfString.h"
 #include "com/lowagie/text/pdf/PdfNumber.h"
 #include "com/lowagie/text/pdf/PdfArray.h"
@@ -193,15 +196,20 @@ TK_Session::add_reader( InputPdf* input_
 		// store in this java object so the gc can trace it
 		g_dont_collect_p->addElement( reader );
 
-		input_pdf_p->m_authorized_b= ( !reader->encrypted || reader->passwordIsOwner );
+		input_pdf_p->m_authorized_b= reader->isOpenedWithFullPermissions();
 		if( !input_pdf_p->m_authorized_b ) {
 			open_success_b= false;
 		}
 	}
 	catch( java::io::IOException* ioe_p ) { // file open error
-		if( ioe_p->getMessage()->equals( JvNewStringUTF( "Bad password" ) ) ) {
+		if( ioe_p->getMessage()->equals( JvNewStringUTF( "Bad user password" ) ) ) {
 			input_pdf_p->m_authorized_b= false;
 		}
+		else {
+			cerr << string((const char*) elements(ioe_p->getMessage()->getBytes()),
+										 (int) ioe_p->getMessage()->getBytes()->length)
+					 << endl;
+		}
 		open_success_b= false;
 	}
 	catch( java::lang::Throwable* t_p ) { // unexpected error
@@ -2182,14 +2190,14 @@ TK_Session::create_output()
 				output_doc_p->addCreator( jv_creator_p );
 
 				// un/compress output streams?
-				if( m_output_uncompress_b ) {
-					writer_p->filterStreams= true;
-					writer_p->compressStreams= false;
-				}
-				else if( m_output_compress_b ) {
-					writer_p->filterStreams= false;
-					writer_p->compressStreams= true;
-				}
+//				if( m_output_uncompress_b ) {
+//					writer_p->filterStreams= true;
+//					writer_p->compressStreams= false;
+//				}
+//				else if( m_output_compress_b ) {
+//					writer_p->filterStreams= false;
+//					writer_p->compressStreams= true;
+//				}
 
 				// encrypt output?
 				if( m_output_encryption_strength!= none_enc ||
@@ -2198,7 +2206,7 @@ TK_Session::create_output()
 					{
 						// if no stregth is given, default to 128 bit,
 						// (which is incompatible w/ Acrobat 4)
-						bool bit128_b=
+						jboolean bit128_b=
 							( m_output_encryption_strength!= bits40_enc );
 
 						writer_p->setEncryption( output_user_pw_p,
@@ -2222,7 +2230,8 @@ TK_Session::create_output()
 							input_reader_p->getPdfObject( trailer_p->get( itext::PdfName::ID ) );
 						if( file_id_p && file_id_p->isArray() ) {
 
-							writer_p->setFileID( file_id_p );
+							// Absent from itext-2.1.7
+//							writer_p->setFileID( file_id_p );
 						}
 					}
 
@@ -2328,12 +2337,14 @@ TK_Session::create_output()
 
 					// un/compress output streams?
 					if( m_output_uncompress_b ) {
-						writer_p->filterStreams= true;
-						writer_p->compressStreams= false;
+					// Absent from itext-2.1.7
+//						writer_p->filterStreams= true;
+//						writer_p->compressStreams= false;
 					}
 					else if( m_output_compress_b ) {
-						writer_p->filterStreams= false;
-						writer_p->compressStreams= true;
+						// Absent from itext-2.1.7
+//						writer_p->filterStreams= false;
+//						writer_p->compressStreams= true;
 					}
 
 					// encrypt output?
@@ -2343,7 +2354,7 @@ TK_Session::create_output()
 						{
 							// if no stregth is given, default to 128 bit,
 							// (which is incompatible w/ Acrobat 4)
-							bool bit128_b=
+							jboolean bit128_b=
 								( m_output_encryption_strength!= bits40_enc );
 
 							writer_p->setEncryption( output_user_pw_p,
@@ -2589,13 +2600,15 @@ TK_Session::create_output()
 				// un/compress output streams?
 				if( m_output_uncompress_b ) {
 					add_marks_to_pages( input_reader_p );
-					writer_p->filterStreams= true;
-					writer_p->compressStreams= false;
+					// Absent from itext-2.1.7
+//					writer_p->filterStreams= true;
+//					writer_p->compressStreams= false;
 				}
 				else if( m_output_compress_b ) {
 					remove_marks_from_pages( input_reader_p );
-					writer_p->filterStreams= false;
-					writer_p->compressStreams= true;
+					// Absent from itext-2.1.7
+//					writer_p->filterStreams= false;
+//					writer_p->compressStreams= true;
 				}
 
 				// encrypt output?
@@ -2606,7 +2619,7 @@ TK_Session::create_output()
 
 						// if no stregth is given, default to 128 bit,
 						// (which is incompatible w/ Acrobat 4)
-						bool bit128_b=
+						jboolean bit128_b=
 							( m_output_encryption_strength!= bits40_enc );
 
 						writer_p->setEncryption( output_user_pw_p,
@@ -2621,8 +2634,10 @@ TK_Session::create_output()
 					{
 						itext::AcroFields* fields_p= writer_p->getAcroFields();
 						fields_p->setGenerateAppearances( true ); // have iText create field appearances
-						if( ( fdf_reader_p && fields_p->setFields( fdf_reader_p ) ) ||
-								( xfdf_reader_p && fields_p->setFields( xfdf_reader_p ) ) )
+						if( fdf_reader_p )
+							fields_p->setFields( fdf_reader_p );
+						if(     xfdf_reader_p )
+							fields_p->setFields( xfdf_reader_p );
 							{ // Rich Text input found
 
 								// set the PDF so that Acrobat will create appearances;
@@ -2688,16 +2703,16 @@ TK_Session::create_output()
 							doc_page_size_p= doc_page_size_p->rotate();
 						}
 
-						jfloat h_scale= doc_page_size_p->width() / mark_page_size_p->width();
-						jfloat v_scale= doc_page_size_p->height() / mark_page_size_p->height();
+						jfloat h_scale= doc_page_size_p->getWidth() / mark_page_size_p->getWidth();
+						jfloat v_scale= doc_page_size_p->getHeight() / mark_page_size_p->getHeight();
 						jfloat mark_scale= (h_scale< v_scale) ? h_scale : v_scale;
 
-						jfloat h_trans= (jfloat)(doc_page_size_p->left()- mark_page_size_p->left()* mark_scale +
-																		 (doc_page_size_p->width()- 
-																			mark_page_size_p->width()* mark_scale) / 2.0);
-						jfloat v_trans= (jfloat)(doc_page_size_p->bottom()- mark_page_size_p->bottom()* mark_scale +
-																		 (doc_page_size_p->height()- 
-																			mark_page_size_p->height()* mark_scale) / 2.0);
+						jfloat h_trans= (jfloat)(doc_page_size_p->getLeft()- mark_page_size_p->getLeft()* mark_scale +
+																		 (doc_page_size_p->getWidth()- 
+																			mark_page_size_p->getWidth()* mark_scale) / 2.0);
+						jfloat v_trans= (jfloat)(doc_page_size_p->getBottom()- mark_page_size_p->getBottom()* mark_scale +
+																		 (doc_page_size_p->getHeight()- 
+																			mark_page_size_p->getHeight()* mark_scale) / 2.0);
           
 						com::lowagie::text::pdf::PdfContentByte* content_byte_p= 
 							( background_b ) ? writer_p->getUnderContent( ii ) : writer_p->getOverContent( ii );
@@ -2714,20 +2729,20 @@ TK_Session::create_output()
 																					 0, -1* mark_scale,
 																					 mark_scale, 0,
 																					 h_trans, 
-																					 v_trans+ mark_page_size_p->height()* mark_scale );
+																					 v_trans+ mark_page_size_p->getHeight()* mark_scale );
 						}
 						else if( mark_page_rotation== 180 ) {
 							content_byte_p->addTemplate( mark_page_p, 
 																					 -1* mark_scale, 0,
 																					 0, -1* mark_scale,
-																					 h_trans+ mark_page_size_p->width()* mark_scale, 
-																					 v_trans+ mark_page_size_p->height()* mark_scale );
+																					 h_trans+ mark_page_size_p->getWidth()* mark_scale, 
+																					 v_trans+ mark_page_size_p->getHeight()* mark_scale );
 						}
 						else if( mark_page_rotation== 270 ) {
 							content_byte_p->addTemplate( mark_page_p, 
 																					 0, mark_scale,
 																					 -1* mark_scale, 0,
-																					 h_trans+ mark_page_size_p->width()* mark_scale, v_trans );
+																					 h_trans+ mark_page_size_p->getWidth()* mark_scale, v_trans );
 						}
 					}
 				}
@@ -2739,7 +2754,7 @@ TK_Session::create_output()
 				}
 
 				// done; write output
-				writer_p->close();
+				writer_p->close(NULL);
 			}
 			break;
 
@@ -2903,15 +2918,15 @@ Bug-Debian: http://bugs.debian.org/56059
 			JvCreateJavaVM(NULL);
 			JvAttachCurrentThread(NULL, NULL);
 
-			JvInitClass(&java::System::class$);
-			JvInitClass(&java::util::ArrayList::class$);
-			JvInitClass(&java::util::Iterator::class$);
-
-			JvInitClass(&itext::PdfObject::class$);
-			JvInitClass(&itext::PdfName::class$);
-			JvInitClass(&itext::PdfDictionary::class$);
-			JvInitClass(&itext::PdfOutline::class$);
-			JvInitClass(&itext::PdfBoolean::class$);
+//			JvInitClass(&java::System::class$);
+//			JvInitClass(&java::util::ArrayList::class$);
+//			JvInitClass(&java::util::Iterator::class$);
+
+//			JvInitClass(&itext::PdfObject::class$);
+//			JvInitClass(&itext::PdfName::class$);
+//			JvInitClass(&itext::PdfDictionary::class$);
+//			JvInitClass(&itext::PdfOutline::class$);
+//			JvInitClass(&itext::PdfBoolean::class$);
 
 			TK_Session tk_session( argc, argv );
 
diff -rupN pdftk-1.44-dist.old/pdftk/report.cc pdftk-1.44-dist/pdftk/report.cc
--- pdftk-1.44-dist.old/pdftk/report.cc	2010-10-27 16:09:41.000000000 -0400
+++ pdftk-1.44-dist/pdftk/report.cc	2011-01-09 15:19:32.000000000 -0500
@@ -55,8 +55,11 @@
 
 #include "com/lowagie/text/Document.h"
 #include "com/lowagie/text/Rectangle.h"
+// Ewww, PdfName has a field called NULL.
+#undef NULL
 #include "com/lowagie/text/pdf/PdfObject.h"
 #include "com/lowagie/text/pdf/PdfName.h"
+#define NULL __null
 #include "com/lowagie/text/pdf/PdfString.h"
 #include "com/lowagie/text/pdf/PdfNumber.h"
 #include "com/lowagie/text/pdf/PdfArray.h"
@@ -1363,11 +1366,12 @@ ReplaceXmp( itext::PdfReader* reader_p,
 				if( xmp_str_p ) {
 					xmp_str_p->put( itext::PdfName::TYPE, itext::PdfName::METADATA );
 					xmp_str_p->put( itext::PdfName::SUBTYPE, itext::PdfName::XML );
-			
-					itext::PdfIndirectReference* xmp_str_ref_p=
-						(itext::PdfIndirectReference*)reader_p->getPRIndirectReference( xmp_str_p );
 
-					catalog_p->put( itext::PdfName::METADATA, xmp_str_ref_p );
+					//                             FIXME: PdfReader.getPRIndirectReference is absent from itext-2.1.7			
+//					itext::PdfIndirectReference* xmp_str_ref_p=
+//						(itext::PdfIndirectReference*)reader_p->getPRIndirectReference( xmp_str_p );
+
+//					catalog_p->put( itext::PdfName::METADATA, xmp_str_ref_p );
 				}
 				else {
 					ret_val_b= false;