diff --git a/src/regionModels/surfaceFilmModels/submodels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.C b/src/regionModels/surfaceFilmModels/submodels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.C
index 27376b14d5e6259e063658e276077cb13dc5a006..0d8011404cf67ce1ae5d2d6c7f10fa78e33a713e 100644
--- a/src/regionModels/surfaceFilmModels/submodels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.C
+++ b/src/regionModels/surfaceFilmModels/submodels/kinematic/injectionModel/curvatureSeparation/curvatureSeparation.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
+    \\  /    A nd           | Copyright (C) 2011-2013 OpenFOAM Foundation
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
 License
@@ -229,8 +229,24 @@ curvatureSeparation::curvatureSeparation
     deltaByR1Min_(coeffs().lookupOrDefault<scalar>("deltaByR1Min", 0.0)),
     definedPatchRadii_(),
     magG_(mag(owner.g().value())),
-    gHat_(owner.g().value()/magG_)
+    gHat_(vector::zero)
 {
+    if (magG_ < ROOTVSMALL)
+    {
+        FatalErrorIn
+        (
+            "curvatureSeparation::curvatureSeparation"
+            "("
+                "const surfaceFilmModel&, "
+                "const dictionary&"
+            ")"
+        )
+            << "Acceleration due to gravity must be non-zero"
+            << exit(FatalError);
+    }
+
+    gHat_ = owner.g().value()/magG_;
+
     List<Tuple2<word, scalar> > prIn(coeffs().lookup("definedPatchRadii"));
     const wordList& allPatchNames = owner.regionMesh().boundaryMesh().names();