System.Data.SQLite
Check-in [a0724d224c]
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Refine the changes made in the previous check-in.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: a0724d224cd7230872eab09c19c28c2424a01a7b
User & Date: mistachkin 2015-07-17 02:05:22
Context
2015-07-17
02:46
Update Trace.WriteLine calls for consistency. Revise when calls to UnbindFunctions are made. check-in: 7c3cad7da2 user: mistachkin tags: trunk
02:05
Refine the changes made in the previous check-in. check-in: a0724d224c user: mistachkin tags: trunk
02:01
Add the UnbindFunctionsOnClose connection flag. check-in: 2a6efe65f7 user: mistachkin tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to System.Data.SQLite/SQLiteFunction.cs.

803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
...
834
835
836
837
838
839
840








841
842
843
844
845
846
847

        IDictionary<SQLiteFunctionAttribute, SQLiteFunction> lFunctions =
            sqlbase.Functions;

        if (lFunctions == null)
            return false;

        //
        // NOTE: Need to use a copy in this method here because the underlying
        //       dictionary is modified by the UnbindFunction method.
        //
        lFunctions = new Dictionary<SQLiteFunctionAttribute, SQLiteFunction>(
            lFunctions);

        bool result = true;

        if (registered)
        {
            foreach (KeyValuePair<SQLiteFunctionAttribute, object> pair
                    in _registeredFunctions)
            {
................................................................................
                {
                    result = false;
                }
            }
        }
        else
        {








            foreach (KeyValuePair<SQLiteFunctionAttribute, SQLiteFunction> pair
                    in lFunctions)
            {
                SQLiteFunctionAttribute pr = pair.Key;

                if (pr == null)
                    continue;







<
<
<
<
<
<
<







 







>
>
>
>
>
>
>
>







803
804
805
806
807
808
809







810
811
812
813
814
815
816
...
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848

        IDictionary<SQLiteFunctionAttribute, SQLiteFunction> lFunctions =
            sqlbase.Functions;

        if (lFunctions == null)
            return false;








        bool result = true;

        if (registered)
        {
            foreach (KeyValuePair<SQLiteFunctionAttribute, object> pair
                    in _registeredFunctions)
            {
................................................................................
                {
                    result = false;
                }
            }
        }
        else
        {
            //
            // NOTE: Need to use a copy of the function dictionary in this method
            //       because the dictionary is modified within the UnbindFunction
            //       method, which is called inside the loop.
            //
            lFunctions = new Dictionary<SQLiteFunctionAttribute, SQLiteFunction>(
                lFunctions);

            foreach (KeyValuePair<SQLiteFunctionAttribute, SQLiteFunction> pair
                    in lFunctions)
            {
                SQLiteFunctionAttribute pr = pair.Key;

                if (pr == null)
                    continue;