summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGrzegorz Kossakowski <grzegorz.kossakowski@gmail.com>2013-08-27 18:42:57 -0700
committerGrzegorz Kossakowski <grzegorz.kossakowski@gmail.com>2013-08-27 18:42:57 -0700
commita24fc60deed8fbed062ecd6ff96e434349cca75d (patch)
tree73d82d5f0fe4794cf826efb4f1c8ed221a01b362 /src
parent7817efe2468480317965fc5baece52be392f0f7a (diff)
parent5e8bc196cebcbaf86a63330cf0474909f72a6fe0 (diff)
downloadscala-a24fc60deed8fbed062ecd6ff96e434349cca75d.tar.gz
scala-a24fc60deed8fbed062ecd6ff96e434349cca75d.tar.bz2
scala-a24fc60deed8fbed062ecd6ff96e434349cca75d.zip
Merge pull request #2883 from retronym/topic/junit-zip-archive
A better diagnostic error for corrupt or missing JARs.
Diffstat (limited to 'src')
-rw-r--r--src/reflect/scala/reflect/io/ZipArchive.scala6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/reflect/scala/reflect/io/ZipArchive.scala b/src/reflect/scala/reflect/io/ZipArchive.scala
index eabf1dcbab..8260189459 100644
--- a/src/reflect/scala/reflect/io/ZipArchive.scala
+++ b/src/reflect/scala/reflect/io/ZipArchive.scala
@@ -126,7 +126,11 @@ abstract class ZipArchive(override val file: JFile) extends AbstractFile with Eq
/** ''Note: This library is considered experimental and should not be used unless you know what you are doing.'' */
final class FileZipArchive(file: JFile) extends ZipArchive(file) {
def iterator: Iterator[Entry] = {
- val zipFile = new ZipFile(file)
+ val zipFile = try {
+ new ZipFile(file)
+ } catch {
+ case ioe: IOException => throw new IOException("Error accessing " + file.getPath, ioe)
+ }
val root = new DirEntry("/")
val dirs = mutable.HashMap[String, DirEntry]("/" -> root)
val enum = zipFile.entries()