@@ -163,13 +163,7 @@ private void AddJoinNodes(IRestrictableStatement query, JoinSequence join, FromE
163163 // If there is a FROM fragment and the FROM element is an explicit, then add the from part.
164164 if ( fromElement . UseFromFragment /*&& StringHelper.isNotEmpty( frag )*/ )
165165 {
166- SqlString fromFragment = ProcessFromFragment ( frag , join ) . Trim ( ) ;
167- if ( log . IsDebugEnabled ( ) )
168- {
169- log . Debug ( "Using FROM fragment [{0}]" , fromFragment ) ;
170- }
171-
172- ProcessDynamicFilterParameters ( fromFragment , fromElement , _walker ) ;
166+ ProcessDynamicFilterParameters ( frag , fromElement , _walker , true ) ;
173167 }
174168
175169 _syntheticAndFactory . AddWhereFragment (
@@ -181,7 +175,7 @@ private void AddJoinNodes(IRestrictableStatement query, JoinSequence join, FromE
181175 ) ;
182176 }
183177
184- private static SqlString ProcessFromFragment ( SqlString frag , JoinSequence join )
178+ private static SqlString ProcessFromFragment ( SqlString frag )
185179 {
186180 SqlString fromFragment = frag . Trim ( ) ;
187181 // The FROM fragment will probably begin with ', '. Remove this if it is present.
@@ -194,7 +188,12 @@ private static SqlString ProcessFromFragment(SqlString frag, JoinSequence join)
194188 public static void ProcessDynamicFilterParameters (
195189 SqlString sqlFragment ,
196190 IParameterContainer container ,
197- HqlSqlWalker walker )
191+ HqlSqlWalker walker )
192+ {
193+ ProcessDynamicFilterParameters ( sqlFragment , container , walker , false ) ;
194+ }
195+
196+ private static void ProcessDynamicFilterParameters ( SqlString sqlFragment , IParameterContainer container , HqlSqlWalker walker , bool fromFragment )
198197 {
199198 if ( walker . EnabledFilters . Count == 0
200199 && ( ! HasDynamicFilterParam ( sqlFragment ) )
@@ -203,6 +202,14 @@ public static void ProcessDynamicFilterParameters(
203202 return ;
204203 }
205204
205+ if ( fromFragment )
206+ {
207+ sqlFragment = ProcessFromFragment ( sqlFragment ) . Trim ( ) ;
208+ if ( log . IsDebugEnabled ( ) )
209+ {
210+ log . Debug ( "Using FROM fragment [{0}]" , sqlFragment ) ;
211+ }
212+ }
206213 container . Text = sqlFragment . ToString ( ) ; // dynamic-filters are processed altogether by Loader
207214 }
208215
0 commit comments