]> source.dussan.org Git - jackcess.git/commitdiff
Fixed bug 1261536.
authorTim McCune <javajedi@users.sf.net>
Sat, 20 Aug 2005 05:46:15 +0000 (05:46 +0000)
committerTim McCune <javajedi@users.sf.net>
Sat, 20 Aug 2005 05:46:15 +0000 (05:46 +0000)
  Skip overflow rows (need to figure out how to read them, but at least it no longer throws an exception.)
  Fixed bad index offset for table definition.  Index count is repeated, but the 2nd one is the correct one to read, not the first.
Added changes report to site.

git-svn-id: https://svn.code.sf.net/p/jackcess/code/jackcess/trunk@22 f203690c-595d-4dc9-a70b-905162fa7fd2

project.properties
project.xml
src/java/com/healthmarketscience/jackcess/JetFormat.java
src/java/com/healthmarketscience/jackcess/Table.java

index bf4a02badf4bb5d6a3d585d61b4fbf9b669be000..ef6d4aea0ca3488b5fec4a01d219d0cb29f413e5 100644 (file)
@@ -1,3 +1,5 @@
+maven.announcement.mail.server=localhost
+maven.announcement.mail.to=jackcess-users@lists.sourceforge.net
 maven.artifact.legacy=false
 maven.changes.issue.template=http://sf.net/tracker/index.php?func=detail&aid=%ISSUE%&group_id=134943&atid=731445
 maven.compile.compilerargs=-Xlint:all
index 2e26fe5c471910e074e83ac9facf3c175144f5f8..21b1d489379d3aed33988ed069bf65f95c566414 100644 (file)
@@ -32,7 +32,7 @@
     <developer>
       <name>Tim McCune</name>
       <id>javajedi</id>
-      <email>javajedi at users dot sf dot net</email>
+      <email>javajedi@users.sf.net</email>
       <organization>Health Market Science, Inc.</organization>
       <timezone>-5</timezone>
     </developer>
@@ -94,6 +94,7 @@
   </dependencies>
   <reports>
     <report>maven-faq-plugin</report>
+    <report>maven-changes-plugin</report>
     <report>maven-javadoc-plugin</report>
     <report>maven-jxr-plugin</report>
     <report>maven-jdepend-plugin</report>
index 561e4178863a917c9db6c9c40a013ee148df8978..d6925b63fa8a91e1f92bc329443fd4ad7366c4b9 100644 (file)
@@ -251,7 +251,7 @@ public abstract class JetFormat {
     protected int defineOffsetNumRows() { return 16; }
     protected int defineOffsetTableType() { return 40; }
     protected int defineOffsetNumCols() { return 45; }
-    protected int defineOffsetNumIndexes() { return 47; }
+    protected int defineOffsetNumIndexes() { return 51; }
     protected int defineOffsetOwnedPages() { return 55; }
     protected int defineOffsetFreeSpacePages() { return 59; }
     protected int defineOffsetIndexDefBlock() { return 63; }
index f9f7f1f1742926a5330c8251019bf9fee5b4be55..9ac791baf6f624952e21e40c129491df1c6c9baf 100644 (file)
@@ -243,8 +243,14 @@ public class Table {
     if (_rowStart < 0) {
       // Deleted row.  Skip.
       return positionAtNextRow();
+    } else if ((_rowStart & 0x4000) > 0) {
+      // Overflow page.
+      // FIXME - Currently skipping this.  Need to figure out how to read it.
+      _buffer.position(_rowStart - 0x4000);
+      int overflow = _buffer.getInt();
+      _lastRowStart -= 4;
+      return positionAtNextRow();
     } else {
-      // XXX - Handle overflow pages.
       _buffer.position(_rowStart);
       _buffer.limit(_lastRowStart);
       _lastRowStart = _rowStart;