Index: src/sas/sascalc/dataloader/file_reader_base_class.py
===================================================================
--- src/sas/sascalc/dataloader/file_reader_base_class.py	(revision 466099059f597d5842a60de66109f35c6daeed17)
+++ src/sas/sascalc/dataloader/file_reader_base_class.py	(revision ae69c690bae8eb1cae0c6902dd71755dda9710f8)
@@ -191,5 +191,6 @@
         self.output = []
 
-    def remove_empty_q_values(self, has_error_dx=False, has_error_dy=False):
+    def remove_empty_q_values(self, has_error_dx=False, has_error_dy=False,
+                              has_error_dxl=False, has_error_dxw=False):
         """
         Remove any point where Q == 0
@@ -198,8 +199,12 @@
         self.current_dataset.x = self.current_dataset.x[x != 0]
         self.current_dataset.y = self.current_dataset.y[x != 0]
-        self.current_dataset.dy = self.current_dataset.dy[x != 0] if \
-            has_error_dy else np.zeros(len(self.current_dataset.y))
-        self.current_dataset.dx = self.current_dataset.dx[x != 0] if \
-            has_error_dx else np.zeros(len(self.current_dataset.x))
+        if has_error_dy:
+            self.current_dataset.dy = self.current_dataset.dy[x != 0]
+        if has_error_dx:
+            self.current_dataset.dx = self.current_dataset.dx[x != 0]
+        if has_error_dxl:
+            self.current_dataset.dxl = self.current_dataset.dxl[x != 0]
+        if has_error_dxw:
+            self.current_dataset.dxw = self.current_dataset.dxw[x != 0]
 
     def reset_data_list(self, no_lines=0):
Index: src/sas/sascalc/dataloader/readers/cansas_reader.py
===================================================================
--- src/sas/sascalc/dataloader/readers/cansas_reader.py	(revision 590b5c2d6751d6e04e3b397709a0afb2df05d119)
+++ src/sas/sascalc/dataloader/readers/cansas_reader.py	(revision ae69c690bae8eb1cae0c6902dd71755dda9710f8)
@@ -511,6 +511,10 @@
         """
         has_error_dx = self.current_dataset.dx is not None
+        has_error_dxl = self.current_dataset.dxl is not None
+        has_error_dxw = self.current_dataset.dxw is not None
         has_error_dy = self.current_dataset.dy is not None
         self.remove_empty_q_values(has_error_dx=has_error_dx,
+                                   has_error_dxl=has_error_dxl,
+                                   has_error_dxw=has_error_dxw,
                                    has_error_dy=has_error_dy)
         self.send_to_output()  # Combine datasets with DataInfo
@@ -678,17 +682,15 @@
             di_exists = True
         if dqw_exists and not dql_exists:
-            array_size = self.current_dataset.dxw.size - 1
-            self.current_dataset.dxl = np.append(self.current_dataset.dxl,
-                                                 np.zeros([array_size]))
+            array_size = self.current_dataset.dxw.size
+            self.current_dataset.dxl = np.zeros(array_size)
         elif dql_exists and not dqw_exists:
-            array_size = self.current_dataset.dxl.size - 1
-            self.current_dataset.dxw = np.append(self.current_dataset.dxw,
-                                                 np.zeros([array_size]))
+            array_size = self.current_dataset.dxl.size
+            self.current_dataset.dxw = np.zeros(array_size)
         elif not dql_exists and not dqw_exists and not dq_exists:
-            array_size = self.current_dataset.x.size - 1
+            array_size = self.current_dataset.x.size
             self.current_dataset.dx = np.append(self.current_dataset.dx,
                                                 np.zeros([array_size]))
         if not di_exists:
-            array_size = self.current_dataset.y.size - 1
+            array_size = self.current_dataset.y.size
             self.current_dataset.dy = np.append(self.current_dataset.dy,
                                                 np.zeros([array_size]))
Index: test/sasdataloader/test/utest_abs_reader.py
===================================================================
--- test/sasdataloader/test/utest_abs_reader.py	(revision a78a02fe90f1c962f523301685c143a27f11ba7d)
+++ test/sasdataloader/test/utest_abs_reader.py	(revision ae69c690bae8eb1cae0c6902dd71755dda9710f8)
@@ -333,5 +333,4 @@
         self.assertEqual(self.data.x[1], 0.03)
         self.assertAlmostEquals(self.data.y[1], 1001.0)
-        self.assertEqual(self.data.dx[0], 0.0)
         self.assertEqual(self.data.dxl[1], 0.005)
         self.assertEqual(self.data.dxw[1], 0.001)
