iPhoneアプリ開発 -同じ画像を2度以上画像処理した際に起こるエラーの対処-

公開日: : iPhone, IT


 起きた現象

(1) UIImageのデータを元にピクセルの値を色々といじって画像処理。
(2) 同じUIImageで再度、画像処理しようとするとEXC_BAD_ACCESS

上記のように1度画像加工した画像に対して、再度画像処理をしようとすると、EXC_BAD_ACCESSが発生します。

 対処内容

元々のコードは以下の様な感じです。

    CGDataProviderRef dataProvider = CGImageGetDataProvider([image CGImage]);
    CFDataRef data                 = CGDataProviderCopyData(dataProvider);
    int *originalPixels            = (int*)CFDataGetBytePtr(data);         //(1)
    //画像処理//
    [originalPixelsの値をいじりまくり]
    //以下略
    //画像処理した値から再度UIImageを合成
    //使い終わったものはrelease

どうも(1)がダメっぽい。
以下のようにMutableにすれば問題ないようです。

    CFDataRef data                 = CGDataProviderCopyData(dataProvider);
    CFMutableDataRef mutableData   = CFDataCreateMutableCopy(0, 0, data);
    int *originalPixels            = (int*)CFDataGetMutableBytePtr(mutableData);

※mutableDataは使い終わったらCFReleaseする必要があります。

参考

広告

関連記事

iPhoneアプリ開発 芳名帳アプリ作成(2) -記帳画面作成-

* 今までの流れ - * 画面構成 今回の芳名帳アプリは以下の画面で構成しています。 -

記事を読む

no image

WordPressプラグイン「SyntaxHighlighter Evolved」が動かない!?

* 起きたこと ある時から、本ブログのコードの部分が「SyntaxHighlighter」で表示され

記事を読む

no image

github-flowを使っての開発(3) -1つのプロジェクトを複数人で開発-

今まで2回ほどgithub-flowをもとにした開発の流れを書きました。 今回は、複数人で開発をする

記事を読む

Jenkins + iPhoneアプリ(2) -ローカルリポジトリにあるデータからipaファイル生成-

* これまで - * 最終目標 -(開発者)git(リモートリポジトリ)にソースをコミット

記事を読む

no image

カレログ騒動で考えたライフログのこと

今回、カレログというAndroidアプリが話題になり騒動になってます。 というわけで、ふとカレログ

記事を読む

Jenkins + DeployGate(1) -DeployGateでAndroidアプリ開発-

TestFlight for Androidが発表されて1ヶ月ぐらいたちますが、音沙汰がありません。

記事を読む

no image

CakePHP1.3でテストコード(1) -モデルのテスト-

CakePHP1.3ではSimpleTestを用いてテストコードを書きます。 ※CakePHP2系で

記事を読む

no image

iPhoneアプリ開発 −遷移先のViewControllerに値を引き継ぎたい−

例えば、トップページに複数個のボタンがあって、「A」と「B」というボタンを押下した際に、同じView

記事を読む

iPhoneアプリ開発 芳名帳アプリ作成(1) -最初の一歩-

* 作るアプリ 結婚式や2次会で「自分の名前を書く」芳名帳 これをアプリで作ってみます。

記事を読む

スクリーンショット 2012-10-20 14.26.24

iPhoneアプリ開発 −UITabControllerの利用−

* やりたいこと 上にあるように下部にあるタブをタッチしたら別のページを呼び出す。 * 

記事を読む

広告

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

広告

no image
[感想] Effective Objective-C 2.0 ☆☆☆☆★(4.5)

* 構成 - 第1章 Objective-Cに慣れる -

no image
[感想] iOSアプリテスト自動化入門 ☆☆☆(3.0)

* 構成 - Chapter 1 テスト自動化への取り組み

DeployGateを試してみた(iOS編) -DeployGateがiOSに対応-

今までのDeployGate - -[http://pplace.

iPhone/iPadアプリを開発するためにやったこと

今までに、iPhoneを3本ほどリリース((リリースしたアプリは全て1

no image
ターミナルでgitのコマンドを補完したりブランチ名を表示する – macでgitを便利に使うために –

* やりたいこと macのターミナルでgitをいじっていると -今の

→もっと見る

PAGE TOP ↑