--- /dev/null
+diff -urpN busybox-1.17.3/coreutils/sort.c busybox-1.17.3-sort/coreutils/sort.c
+--- busybox-1.17.3/coreutils/sort.c 2010-10-09 21:57:13.000000000 +0200
++++ busybox-1.17.3-sort/coreutils/sort.c 2010-10-20 15:17:35.320293543 +0200
+@@ -412,7 +412,7 @@ int sort_main(int argc UNUSED_PARAM, cha
+ #if ENABLE_FEATURE_SORT_BIG
+ /* Open output file _after_ we read all input ones */
+ if (option_mask32 & FLAG_o)
+- xmove_fd(xopen3(str_o, O_WRONLY, 0666), STDOUT_FILENO);
++ xmove_fd(xopen3(str_o, O_WRONLY|O_CREAT|O_TRUNC, 0666), STDOUT_FILENO);
+ #endif
+ flag = (option_mask32 & FLAG_z) ? '\0' : '\n';
+ for (i = 0; i < linecount; i++)