diff --git a/src/velociraptor_interface.c b/src/velociraptor_interface.c
index 77eb9fa9dce12e52455e5f9586f19c2e0640d033..218beb1976fbf813e5fc6381fa68a4e74f483d99 100644
--- a/src/velociraptor_interface.c
+++ b/src/velociraptor_interface.c
@@ -135,7 +135,7 @@ void velociraptor_init(struct engine *e) {
     message("No. of top-level cells: %d", sim_info.numcells);
     message("Top-level cell locations range: (%e,%e,%e) -> (%e,%e,%e)", sim_info.cellloc[0].loc[0], sim_info.cellloc[0].loc[1], sim_info.cellloc[0].loc[2], sim_info.cellloc[sim_info.numcells - 1].loc[0], sim_info.cellloc[sim_info.numcells - 1].loc[1], sim_info.cellloc[sim_info.numcells - 1].loc[2]);
 
-    InitVelociraptor(configfilename, outputFileName, cosmo_info, unit_info, sim_info);
+    if(!InitVelociraptor(configfilename, outputFileName, cosmo_info, unit_info, sim_info)) error("Exiting. VELOCIraptor initialisation failed.");
 
     /* Free cell locations after VELOCIraptor has copied them. */
     //free(sim_info.cellloc);
@@ -194,7 +194,7 @@ void velociraptor_invoke(struct engine *e) {
              e->time);
     }
 
-    InvokeVelociraptor(nr_gparts, nr_hydro_parts, gparts, cell_node_ids, outputFileName);
+    if(!InvokeVelociraptor(nr_gparts, nr_hydro_parts, gparts, cell_node_ids, outputFileName)) error("Exiting. Call to VELOCIraptor failed.");
     
     /* Reset the pthread affinity mask after VELOCIraptor returns. */
     pthread_setaffinity_np(thread, sizeof(cpu_set_t), engine_entry_affinity());
diff --git a/src/velociraptor_interface.h b/src/velociraptor_interface.h
index 4ae0e713af95d2d41128b929b1e78f0fb9eaeceb..cc4002dbdcb2147a85bdb06d324e1ef44719f845 100644
--- a/src/velociraptor_interface.h
+++ b/src/velociraptor_interface.h
@@ -68,8 +68,8 @@ struct siminfo {
 };
 
 /* VELOCIraptor interface. */
-void InitVelociraptor(char* config_name, char* output_name, struct cosmoinfo cosmo_info, struct unitinfo unit_info, struct siminfo sim_info);
-void InvokeVelociraptor(const int num_gravity_parts, const int num_hydro_parts, struct gpart *gravity_parts, const int *cell_node_ids, char* output_name);
+int InitVelociraptor(char* config_name, char* output_name, struct cosmoinfo cosmo_info, struct unitinfo unit_info, struct siminfo sim_info);
+int InvokeVelociraptor(const int num_gravity_parts, const int num_hydro_parts, struct gpart *gravity_parts, const int *cell_node_ids, char* output_name);
 
 /* VELOCIraptor wrapper functions. */
 void velociraptor_init(struct engine *e);