diff --git a/pub/CHANGELOG b/pub/CHANGELOG
index 98b6faf223173f6991185df93e3d795b13c6a0c2..c2276205aa5fa27adb7fa57889473972ed832dd0 100644
--- a/pub/CHANGELOG
+++ b/pub/CHANGELOG
@@ -8,11 +8,13 @@ Release 2.1.6b of ?
 - bugfixes:
   - repair zentry protection default, spoiled in 2.1.5a or 2.1.6a
   - mfj= now works
-- new functionality:
+- improved behaviour:
+  - mfj also for curve files
+- new commands:
   - 'mi' interpolation
   - 'opa' take absolute value of given parameters
   - 'opc' copy parameters from another file
-
+  
 Release 2.1.6a of 26oct12, comes with fridalibs-121026:
 
 - code refactored:
diff --git a/pub/src/manip.cpp b/pub/src/manip.cpp
index 1d5db524a3aa59183b683ee898562cb3e3422abe..c49b0ca05e28601e28b4cd84e1356ce75d6af1f1 100644
--- a/pub/src/manip.cpp
+++ b/pub/src/manip.cpp
@@ -945,7 +945,7 @@ void NManip::FilMerge( const string& opts )
         fout = POld( new COld );
         fout->xco = fin->xco;
         fout->yco = fin->yco;
-        while( (fin = fiter()) ){
+        while ( fin = fiter() ){
             if ( !P2D(fin) )
                 throw "cannot merge data and curve file";
             if ( fin->xco != fout->xco )
@@ -955,10 +955,11 @@ void NManip::FilMerge( const string& opts )
         }
     } else if ( POlc fc = P2C(fin) ) {
         fout = POlc( new COlc );
-        throw "mfj for curve not yet implemented";
-        while( (fin = fiter()) ){
+        while ( fin = fiter() ){
             if ( !P2C(fin) )
                 throw "cannot merge curve and data file";
+            if ( fc->expr != fout->expr )
+                throw "different curve definitions";
         }
     }