A solução foi não especificar um quadro de destino para usuários do Chrome. Parece que o Chrome está vendo o URL sendo passado da página principal para o iframe incorporado e vê que o URL do iframe incorporado não é seguro e, portanto, está sendo rejeitado.
Eu não acho que o Chrome sempre se comportou dessa maneira, mas com a v30 + a solução parece ser especificar e esvaziar o destino no link.
Editar - solução expandida
Aqui está o JavaScript que uso para limpar os atributos de destino dos links (somente para usuários do Chrome). Caso contrário, a solução simples é não especificar um atributo de destino no HTML em primeiro lugar.
// Get a list of all the links with external commands
var commandButtons = $("a[target='my_command']");
updateCommandButtonTargetsForChrome();
// Remove target attribute for Chrome only users
function updateCommandButtonTargetsForChrome() {
var browserInfo = getBrowserInfo();
if (browserInfo[0] == "Chrome")
commandButtons.attr("target", "");
}
function getBrowserInfo() {
var n = navigator.appName, ua = navigator.userAgent, tem;
var m = ua.match(/(opera|chrome|safari|firefox|msie)\/?\s*(\.?\d+(\.\d+)*)/i);
if (m && (tem = ua.match(/version\/([\.\d]+)/i)) != null) m[2] = tem[1];
m = m ? [m[1], m[2]] : [n, navigator.appVersion, '-?'];
return m;
}