ArgumentNullException thrown in CountingMotionDetector.CreateMotionZoneFrame()
Closed this issue · 4 comments
GoogleCodeExporter commented
Steps to reproduce:
AForge.Vision.Motion.CountingMotionDetector detector;
detector = new AForge.Vision.Motion.CountingMotionDetector
();
PictureBox1.Image = System.Drawing.Image.FromFile("somefile.jpg");
detector.ProcessFrame(PictureBox1.Image as
Bitmap);
-------------------------------------------------------
Exception:
System.ArgumentNullException was unhandled
Message="Value cannot be null."
Source="mscorlib"
StackTrace:
at System.Threading.Monitor.Enter(Object obj)
at AForge.Vision.Motion.CountingMotionDetector.CreateMotionZoneFrame
()
at AForge.Vision.Motion.CountingMotionDetector.ProcessFrame(Bitmap
image)
-------------------------------------------------------
Code location:
CountingMotionDetector.cs
-------------------------
private unsafe void CreateMotionZoneFrame( )
{
--> lock ( motionZones )
{
// free motion zones frame if required
if ( ( motionZones == null ) && ( zonesFrame !=
IntPtr.Zero ) )
-------------------------------------------------------
AForge.Vision Version: 1.5.1.0
AForge.Imaging Version: 1.6.2.0
-------------------------------------------------------
Comments:
Null exception happens during the first-ever call to
CountingMotionDetector.ProcessFrame() on the lock() stmt when ProcessFrame
calls CreateMotionZoneFrame().
I dont know of any preconditions for user code to perform in advance that
might help prevent the problem or work around.
The code line immediately following the exceptioning lock() stmt is
if ( ( motionZones == null )
This code line can never be reached, due to exception during lock stmt on
previous line when the motionZones is null.
Thanks for reading
Look forward to usage advice or fix, either one would be cool.
Original issue reported on code.google.com by geoffrey...@gmail.com
on 8 Apr 2008 at 12:49
GoogleCodeExporter commented
The quick fix on user's side will be to set one motion zone with the size of
entire
frame.
Original comment by andrew.k...@gmail.com
on 8 Apr 2008 at 6:03
- Changed state: Accepted
- Added labels: Milestone-Coming, Project-Vision
GoogleCodeExporter commented
Motion zone routines are updated to lock motion detector object (this) instead
of
motionZones variable since it may be null and lead to exception
Committed in revision 476. Will be released in version 1.6.3
Original comment by andrew.k...@gmail.com
on 18 May 2008 at 9:29
- Changed state: Fixed
GoogleCodeExporter commented
Original comment by andrew.k...@gmail.com
on 19 May 2008 at 6:01
- Changed state: Verified
- Removed labels: Milestone-Coming
GoogleCodeExporter commented
Original comment by andrew.k...@gmail.com
on 19 May 2008 at 6:08
- Changed state: Released