diff --git a/fop-core/src/main/java/org/apache/fop/complexscripts/fonts/GlyphPositioningTable.java b/fop-core/src/main/java/org/apache/fop/complexscripts/fonts/GlyphPositioningTable.java
index 6a64ab7..3657330 100644
--- a/fop-core/src/main/java/org/apache/fop/complexscripts/fonts/GlyphPositioningTable.java
+++ b/fop-core/src/main/java/org/apache/fop/complexscripts/fonts/GlyphPositioningTable.java
@@ -1771,7 +1771,6 @@
          */
         public DeviceTable(int startSize, int endSize, int[] deltas) {
             assert startSize >= 0;
-            assert startSize <= endSize;
             assert deltas != null;
             assert deltas.length == (endSize - startSize) + 1;
             this.startSize = startSize;
diff --git a/fop-core/src/test/java/org/apache/fop/complexscripts/fonts/GlyphPositioningTableTestCase.java b/fop-core/src/test/java/org/apache/fop/complexscripts/fonts/GlyphPositioningTableTestCase.java
new file mode 100644
index 0000000..843d123
--- /dev/null
+++ b/fop-core/src/test/java/org/apache/fop/complexscripts/fonts/GlyphPositioningTableTestCase.java
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* $Id$ */
+package org.apache.fop.complexscripts.fonts;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+public class GlyphPositioningTableTestCase {
+    @Test
+    public void testDeviceTable() {
+        GlyphPositioningTable.DeviceTable table = new GlyphPositioningTable.DeviceTable(1, 0 , new int[0]);
+        Assert.assertEquals(table.getStartSize(), 1);
+    }
+}
