diff --git a/packages/slate/src/utils/path-utils.js b/packages/slate/src/utils/path-utils.js
index 2afe61073..08ac4cef2 100644
--- a/packages/slate/src/utils/path-utils.js
+++ b/packages/slate/src/utils/path-utils.js
@@ -342,6 +342,11 @@ function transform(path, operation) {
const { newPath: np } = operation
const npIndex = np.size - 1
const npEqual = isEqual(np, path)
+
+ if (isEqual(p, np)) {
+ return List([path])
+ }
+
const npYounger = isYounger(np, path)
const npAbove = isAbove(np, path)
diff --git a/packages/slate/test/commands/at-current-range/delete/non-void-triple.js b/packages/slate/test/commands/at-current-range/delete/non-void-triple.js
new file mode 100644
index 000000000..1b964b9cb
--- /dev/null
+++ b/packages/slate/test/commands/at-current-range/delete/non-void-triple.js
@@ -0,0 +1,31 @@
+/** @jsx h */
+
+import h from '../../../helpers/h'
+
+export default function(change) {
+ change.delete()
+}
+
+export const input = (
+
+
+
+ 1
+
+ 2
+
+ 3
+
+
+
+)
+
+export const output = (
+
+
+
+
+
+
+
+)
diff --git a/packages/slate/test/commands/at-current-range/delete/void-inline-as-last-with-non-void-previous-siblings.js b/packages/slate/test/commands/at-current-range/delete/void-inline-as-last-with-non-void-previous-siblings.js
new file mode 100644
index 000000000..5d3d79227
--- /dev/null
+++ b/packages/slate/test/commands/at-current-range/delete/void-inline-as-last-with-non-void-previous-siblings.js
@@ -0,0 +1,32 @@
+/** @jsx h */
+
+import h from '../../../helpers/h'
+
+export default function(change) {
+ change.delete()
+}
+
+export const input = (
+
+
+
+ Hi
+
+ there
+
+
+
+
+
+
+)
+
+export const output = (
+
+
+
+
+
+
+
+)