This is an automated email from the git hooks/post-receive script. xhaakon-guest pushed a commit to branch master in repository eclipse-pydev.
commit b7255a031158f9482acde25cf05cb45527bf5f79 Author: Jakub Adam <[email protected]> Date: Sun Nov 16 22:44:10 2014 +0100 Fix attaching a debugger to a running Python process --- debian/patches/fix-proc-read-linux-3.17.patch | 43 +++++++++++++++++++++++++++ debian/patches/series | 1 + 2 files changed, 44 insertions(+) diff --git a/debian/patches/fix-proc-read-linux-3.17.patch b/debian/patches/fix-proc-read-linux-3.17.patch new file mode 100644 index 0000000..02a3d9a --- /dev/null +++ b/debian/patches/fix-proc-read-linux-3.17.patch @@ -0,0 +1,43 @@ +From: Jakub Adam <[email protected]> +Date: Sun, 16 Nov 2014 22:08:45 +0100 +Subject: fix-proc-read-linux-3.17 + +Implementation of procfs changed in Linux 3.17 so that lseek SEEK_END called on +files in /proc now fails with EINVAL error, which consequently leads to +IOException being thrown from Java native method FileInputStream.available() +internally using lseek. + +Since PyDev uses available() merely to optimize memory allocation of a string +buffer, we can just ignore the exception. In that case the only drawback will be +a possible need to increase the buffer size by re-allocating it during reading +of the contents of the file. + +This fixes an error whenever the user tried to attach a debugger to a running +Python process. +--- + .../src/org/python/pydev/shared_core/io/FileUtils.java | 12 +++++++----- + 1 file changed, 7 insertions(+), 5 deletions(-) + +diff --git a/plugins/org.python.pydev.shared_core/src/org/python/pydev/shared_core/io/FileUtils.java b/plugins/org.python.pydev.shared_core/src/org/python/pydev/shared_core/io/FileUtils.java +index 7c395a1..93abc40 100644 +--- a/plugins/org.python.pydev.shared_core/src/org/python/pydev/shared_core/io/FileUtils.java ++++ b/plugins/org.python.pydev.shared_core/src/org/python/pydev/shared_core/io/FileUtils.java +@@ -340,11 +340,13 @@ public class FileUtils { + if (buffer == null) { + int DEFAULT_FILE_SIZE = 8 * BUFFER_SIZE; + +- //discover how to actually read the passed input stream. +- int available = contentStream.available(); +- if (DEFAULT_FILE_SIZE < available) { +- DEFAULT_FILE_SIZE = available; +- } ++ try { ++ //discover how to actually read the passed input stream. ++ int available = contentStream.available(); ++ if (DEFAULT_FILE_SIZE < available) { ++ DEFAULT_FILE_SIZE = available; ++ } ++ } catch (IOException e) {} + buffer = new FastStringBuffer(DEFAULT_FILE_SIZE); + } + diff --git a/debian/patches/series b/debian/patches/series index b75f513..85b1355 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -3,3 +3,4 @@ remove-windows-specific-code.patch no-e4.patch remove-winp-usage.patch fix-attach-so-path.patch +fix-proc-read-linux-3.17.patch -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/eclipse-pydev.git _______________________________________________ pkg-java-commits mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

