E_FAIL error in case of drag-and-drop aborting
WinSCP (6.5.3 Build 16364) returns E_FAIL error from IDropTarget::Drop handler when Abort selected from drag-and-drop menu. This error is returned to source app via DoDragDrop return value. According to docs, target app should return DRAGDROP_S_CANCEL when drag-and-drop was canceled, therefore IDropTarget::Drop result should be DRAGDROP_S_CANCEL.