OSX: lidiar con un error de segmentación para aplicaciones que comenzaron a usar "abierto"

OSX: lidiar con un error de segmentación para aplicaciones que comenzaron a usar "abierto"

Estoy iniciando una aplicación desde un script usando:

open /path/to/foo.app -F -g -W --args -foo bar

Cuando la aplicación falla (en particular, fallas de segmentación), la ventana permanece abierta para siempre y la aplicación no se cierra. Sin embargo, cuando inicio la aplicación a la antigua usanza

/path/to/foo.app/Contents/MacOSX/foo -foo bar

simplemente sale y devuelve un código de error distinto de cero al script, que es lo que quiero. ¿Cómo puedo obtener este comportamiento (salir en caso de falla de segmento y devolver un código de error) usando la sintaxis "abierta" anterior? La motivación es obtener acceso a opciones específicas de OSX como -F, -g, -W, etc.

Respuesta1

Evitaría usar la opción -W. Deabrir la página de manual:

-W Hace que open espere hasta que las aplicaciones que abre (o que ya estaban abiertas) hayan salido. Úselo con el indicador -n para permitir que open funcione como una aplicación apropiada para la variable de entorno $EDITOR.

Este podría ser tu problema.

información relacionada