Skip to content

grpc-labview lets C++ exceptions escape from exported C functions #438

@bkeryan

Description

@bkeryan

The grpc-labview DLL lets C++ exceptions escape from exported C functions. LabVIEW probably displays the "LabVIEW: An exception occurred within the external code called by a Call Library Node. This might have corrupted LabVIEW's memory. Save any work to a new location..." dialog when this happens.

The correct behavior for C functions exported from DLLs written in C++ is to put a try/catch at the top level of each exported entry point which converts C++ exceptions to C error codes.

This approach can also be used to single-source more of the error handling, as described in #437

Originally posted by @bkeryan in #436 (comment)

AB#3117567

AB#3215734

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions