Es ist garantiert nicht der Code, der den Fehler verursacht, sondern höchstens auslöst. Du hast in deiner Anwendung vorher irgendwo einen schweren Schnitzer (z.B. Stack zerschossen), der dann in der Folge irgendwann zu diesem sigsegv führt. Es ist blanker Zufall, das es in dieser Konstellation passierte. Vermutlich bzw. vielleicht wäre der Fehler auch verschwunden, wenn Du die Zeilen vertauscht hättest.
Mein Tipp: Entweder arbeitest Du mit DLLs und die Parameterliste ist falsch, oder du bügelst vorher über eine lokale Variable (die auf dem Stack liegt). Kann aber auch etwas vollkommen anderes sein.