diff options
author | Hyunho Kang <hhstark.kang@samsung.com> | 2017-03-16 19:52:29 +0900 |
---|---|---|
committer | Hyunho Kang <hhstark.kang@samsung.com> | 2017-03-16 19:57:33 +0900 |
commit | 3047fdba62ff7b65b195fd07b447a320c7783465 (patch) | |
tree | c83dea38e9c7a511f36277e3b094d3d63dbe8ba9 | |
parent | 0b2ba80ede32bd7c6e8cc3c689359b80d2b6c775 (diff) | |
download | data-control-3047fdba62ff7b65b195fd07b447a320c7783465.tar.gz data-control-3047fdba62ff7b65b195fd07b447a320c7783465.tar.bz2 data-control-3047fdba62ff7b65b195fd07b447a320c7783465.zip |
Fix bugssubmit/tizen/20170317.051414accepted/tizen/unified/20170317.083617accepted/tizen/tv/20170317.083545accepted/tizen/mobile/20170317.083527accepted/tizen/ivi/20170317.083559accepted/tizen/common/20170317.094619
- Handle leak
- Deref after null
Change-Id: I5bd6f60da90000c11f1bf8457cf391d017d8a902
Signed-off-by: Hyunho Kang <hhstark.kang@samsung.com>
-rwxr-xr-x | Tizen.Applications.DataControl/Tizen.Applications.DataControl/MatrixCursor.cs | 12 | ||||
-rwxr-xr-x | Tizen.Applications.DataControl/Tizen.Applications.DataControl/Provider.cs | 9 |
2 files changed, 18 insertions, 3 deletions
diff --git a/Tizen.Applications.DataControl/Tizen.Applications.DataControl/MatrixCursor.cs b/Tizen.Applications.DataControl/Tizen.Applications.DataControl/MatrixCursor.cs index 685a554..c0d8047 100755 --- a/Tizen.Applications.DataControl/Tizen.Applications.DataControl/MatrixCursor.cs +++ b/Tizen.Applications.DataControl/Tizen.Applications.DataControl/MatrixCursor.cs @@ -260,6 +260,10 @@ namespace Tizen.Applications.DataControl } byte_array = GetValue(index); + if (byte_array == null) + { + ErrorFactory.ThrowException(ResultType.InvalidParamer, false); + } ret = BitConverter.ToInt32(byte_array, 0); return ret; @@ -280,6 +284,10 @@ namespace Tizen.Applications.DataControl } byte_array = GetValue(index); + if (byte_array == null) + { + ErrorFactory.ThrowException(ResultType.InvalidParamer, false); + } ret = BitConverter.ToInt64(byte_array, 0); return ret; @@ -300,6 +308,10 @@ namespace Tizen.Applications.DataControl } byte_array = GetValue(index); + if (byte_array == null) + { + ErrorFactory.ThrowException(ResultType.InvalidParamer, false); + } ret = BitConverter.ToDouble(byte_array, 0); return ret; diff --git a/Tizen.Applications.DataControl/Tizen.Applications.DataControl/Provider.cs b/Tizen.Applications.DataControl/Tizen.Applications.DataControl/Provider.cs index b2bc00c..699f522 100755 --- a/Tizen.Applications.DataControl/Tizen.Applications.DataControl/Provider.cs +++ b/Tizen.Applications.DataControl/Tizen.Applications.DataControl/Provider.cs @@ -119,7 +119,7 @@ namespace Tizen.Applications.DataControl { query += " LIMIT " + countPerPage + " OFFSET " + (countPerPage * (pageNum - 1)); } - + handle.Dispose(); return query; } @@ -461,14 +461,15 @@ namespace Tizen.Applications.DataControl if (ret != ResultType.Success) { Log.Error(LogTag, "Writing a row to a file descriptor is failed"); + mc.Dispose(); return; } } } while (write_size > 0); + mc.Dispose(); } - mc.Dispose(); } else { @@ -806,6 +807,7 @@ namespace Tizen.Applications.DataControl default: break; } + handle.Dispose(); return query; } @@ -822,6 +824,7 @@ namespace Tizen.Applications.DataControl provider = _providerDict[dataID]; provider._nativeHandle = handlePtr; } + handle.Dispose(); return provider; } @@ -839,7 +842,7 @@ namespace Tizen.Applications.DataControl { ResultType ret; - if (changedData == null | changedData.SafeBundleHandle.IsInvalid) + if (changedData == null || changedData.SafeBundleHandle.IsInvalid) { ErrorFactory.ThrowException(ResultType.InvalidParamer, false, "changedData"); } |