| | @@ -2090,12 +2090,17 @@ |
| 2090 | 2090 | useHash = find_option("hash",0,0)!=0 || find_option("sha1sum",0,0)!=0; |
| 2091 | 2091 | noSign = find_option("nosign",0,0)!=0; |
| 2092 | 2092 | privateFlag = find_option("private",0,0)!=0; |
| 2093 | 2093 | forceDelta = find_option("delta",0,0)!=0; |
| 2094 | 2094 | forceBaseline = find_option("baseline",0,0)!=0; |
| 2095 | | - if( forceDelta && forceBaseline ){ |
| 2096 | | - fossil_fatal("cannot use --delta and --baseline together"); |
| 2095 | + if( forceDelta ){ |
| 2096 | + if( forceBaseline ){ |
| 2097 | + fossil_fatal("cannot use --delta and --baseline together"); |
| 2098 | + } |
| 2099 | + if( db_get_boolean("forbid-delta-manifests",0) ){ |
| 2100 | + fossil_fatal("delta manifests are prohibited in this repository"); |
| 2101 | + } |
| 2097 | 2102 | } |
| 2098 | 2103 | dryRunFlag = find_option("dry-run","n",0)!=0; |
| 2099 | 2104 | if( !dryRunFlag ){ |
| 2100 | 2105 | dryRunFlag = find_option("test",0,0)!=0; /* deprecated */ |
| 2101 | 2106 | } |
| | @@ -2174,11 +2179,14 @@ |
| 2174 | 2179 | ** manifest) can continue to use this repository, do not create a new |
| 2175 | 2180 | ** delta-manifest unless this repository already contains one or more |
| 2176 | 2181 | ** delta-manifests, or unless the delta-manifest is explicitly requested |
| 2177 | 2182 | ** by the --delta option. |
| 2178 | 2183 | */ |
| 2179 | | - if( !forceDelta && !db_get_boolean("seen-delta-manifest",0) ){ |
| 2184 | + if( !forceDelta |
| 2185 | + && !db_get_boolean("seen-delta-manifest",0) |
| 2186 | + && !db_get_boolean("forbid-delta-manifests",0) |
| 2187 | + ){ |
| 2180 | 2188 | forceBaseline = 1; |
| 2181 | 2189 | } |
| 2182 | 2190 | |
| 2183 | 2191 | /* |
| 2184 | 2192 | ** Autosync if autosync is enabled and this is not a private check-in. |
| 2185 | 2193 | |