• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: help with logic error
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: help with logic error


  • Subject: Re: help with logic error
  • From: Mike Abdullah <email@hidden>
  • Date: Thu, 12 Dec 2013 11:56:49 +0000

On 12 Dec 2013, at 11:52, 2551 <email@hidden> wrote:

> Hi folks
>
> I need some help with a logic error the Static Analyzer is throwing up. I didn’t write this code (in fact, its a piece of Apple sample code I’m resuing in my project), and I’m not quite sure how to correct it. It goes like this, where the numbers [1], [2], [3], [4] represent the end points of the analyzer's blue arrows:
>
>   [1] const NSRect bounds = [self bounds];
>
>    [backgroundColor set];
>    NSRectFill(dirtyRect);
>
>    const NSRulerOrientation orientation = [self orientation];
>    NSRect borderLineRect;
>    [2] switch (orientation) {
>        case NSVerticalRuler:
>            borderLineRect = NSMakeRect(NSMaxX(bounds)-1.0, 0, 1.0, NSHeight(bounds));
>            break;
>        case NSHorizontalRuler:
>            borderLineRect = NSMakeRect(0, 0, NSWidth(bounds), 1.0);
>            break;
>    }

If orientation happens to have a value *other* than NSVerticalRuler or NSHorizontalRuler, you’ll reach this point with borderLineRect containing garbage since it’s never been filled in properly. This is what the analyser is complaining of I believe.
>
>
>    [3]if [4]([self needsToDrawRect:borderLineRect]) {
>        [[backgroundColor shadowWithLevel:0.4] set];
>        NSRectFill(borderLineRect);
>
> The error message says, in full: Passed-by-value struct argument contains uninitialized data (e.g., via the field chain: 'origin.x’).
>
>
> Thoughts much appreciated.
>
>
> Phil
>
> _______________________________________________
>
> Cocoa-dev mailing list (email@hidden)
>
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
>
> Help/Unsubscribe/Update your Subscription:
>
> This email sent to email@hidden


_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


  • Follow-Ups:
    • Re: help with logic error
      • From: 2551 <email@hidden>
References: 
 >help with logic error (From: 2551 <email@hidden>)

  • Prev by Date: Re: Threaded drawing - JPEG
  • Next by Date: Re: help with logic error
  • Previous by thread: help with logic error
  • Next by thread: Re: help with logic error
  • Index(es):
    • Date
    • Thread