diff --git a/pyopencl/array.py b/pyopencl/array.py
index f6f8a35a9135f00d06e22e3c821e6a854f2b9b23..751de6f38ca4c5ec2fd757e6b6366e532a27004a 100644
--- a/pyopencl/array.py
+++ b/pyopencl/array.py
@@ -1063,8 +1063,7 @@ class Array(object):
         """
 
         self.add_event(
-                cl.enqueue_fill_buffer(queue, self.base_data, np.int8(0),
-                    self.offset, self.nbytes, wait_for=wait_for))
+                self._fill(self, value, queue=queue, wait_for=wait_for))
 
         return self