This is an automated email from the git hooks/post-receive script.

ebourg-guest pushed a commit to branch master
in repository ecj.

commit 6c986cff9eda6785ebdec4b88f2ecb3dd24377bc
Author: Matthias Klose <[email protected]>
Date:   Fri Jul 20 12:05:37 2007 +0200

    Imported Debian patch 3.3.0-2
---
 debian/changelog                    |  6 +++++
 debian/patches/upstream-195317.diff | 47 +++++++++++++++++++++++++++++++++++++
 2 files changed, 53 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index b15900e..b05de4f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+ecj (3.3.0-2) unstable; urgency=low
+
+  * Apply fix for upstream report #195317.
+
+ -- Matthias Klose <[email protected]>  Fri, 20 Jul 2007 12:05:37 +0200
+
 ecj (3.3.0-1) unstable; urgency=low
 
   * New upstream release.
diff --git a/debian/patches/upstream-195317.diff 
b/debian/patches/upstream-195317.diff
new file mode 100644
index 0000000..d716519
--- /dev/null
+++ b/debian/patches/upstream-195317.diff
@@ -0,0 +1,47 @@
+--- 
./src/org.eclipse.jdt.core/org/eclipse/jdt/internal/compiler/codegen/CodeStream.java.orig
  2007-04-25 22:51:06.000000000 +0200
++++ 
./src/org.eclipse.jdt.core/org/eclipse/jdt/internal/compiler/codegen/CodeStream.java
       2007-07-20 12:03:44.000000000 +0200
+@@ -5872,6 +5872,16 @@
+               }
+       }
+ }
++/**
++ * Remove all entries in pcToSourceMap table that are beyond this.position
++ */
++public void removeUnusedPcToSourceMapEntries() {
++      if (this.pcToSourceMapSize != 0) {
++              while (pcToSourceMap[pcToSourceMapSize - 2] > this.position) {
++                      this.pcToSourceMapSize -= 2;
++              }
++      }
++}
+ public void removeVariable(LocalVariableBinding localBinding) {
+       if (localBinding == null) return;
+       if (localBinding.initializationCount > 0) {
+--- 
./src/org.eclipse.jdt.core/org/eclipse/jdt/internal/compiler/codegen/BranchLabel.java.orig
 2006-11-21 10:42:02.000000000 +0100
++++ 
./src/org.eclipse.jdt.core/org/eclipse/jdt/internal/compiler/codegen/BranchLabel.java
      2007-07-20 12:03:44.000000000 +0200
+@@ -205,14 +205,6 @@
+                               this.codeStream.position = (this.position -= 3);
+                               this.codeStream.classFileOffset -= 3;
+                               this.forwardReferenceCount--;
+-                              // also update the PCs in the related debug 
attributes
+-                              /* OLD CODE
+-                                      int index = 
codeStream.pcToSourceMapSize - 1;
+-                                              while ((index >= 0) && 
(codeStream.pcToSourceMap[index][1] == oldPosition)) {
+-                                                      
codeStream.pcToSourceMap[index--][1] = position;
+-                                              }
+-                              */
+-                              // Beginning of new code
+                               if (this.codeStream.lastEntryPC == oldPosition) 
{
+                                       this.codeStream.lastEntryPC = 
this.position;
+                               }
+@@ -233,6 +225,10 @@
+                                               }
+                                       }
+                               }
++                              if ((this.codeStream.generateAttributes & 
ClassFileConstants.ATTR_LINES) != 0) {
++                                      // we need to remove all entries that 
is beyond this.position inside the pcToSourcerMap table
++                                      
this.codeStream.removeUnusedPcToSourceMapEntries();
++                              }
+                       }
+               }
+               for (int i = 0; i < this.forwardReferenceCount; i++) {

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-java/ecj.git

_______________________________________________
pkg-java-commits mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

Reply via email to