diff -urpN drupal-old/sites/all/modules/project_issue/generate/project_issue_generate.inc drupal-new/sites/all/modules/project_issue/generate/project_issue_generate.inc
--- drupal-old/sites/all/modules/project_issue/generate/project_issue_generate.inc	2007-12-09 01:46:25.000000000 -0200
+++ drupal-new/sites/all/modules/project_issue/generate/project_issue_generate.inc	2007-12-15 01:53:34.000000000 -0200
@@ -55,10 +55,96 @@ function project_issue_generate_issues($
   }
 }
 
+/**
+ * Generate some random project issues.
+ *
+ * @param $num
+ *  Number of comments to generate.
+ */
+function project_issue_generate_issue_comments($num) {
+  $issues = _project_issue_generate_get_field('issues');
+  $projects = _project_issue_generate_get_field('projects');
+  $categories = _project_issue_generate_get_field('categories');
+  $priorities = _project_issue_generate_get_field('priorities');
+  $users = _project_issue_generate_get_field('users');
+
+  for ($i = 0; $i < $num; $i++) {
+    srand((double) microtime() * 1000000);
+
+    $k = array_rand($issues);
+
+    $account = user_load(array('uid' => $users[array_rand($users)]->uid));
+    $project = $projects[array_rand($projects)];
+    if (rand(0,1)) {
+      $issues[$k]->pid = $project->nid;
+    }
+    if (rand(0,1)) {
+      $components = unserialize($project->components);
+      $issues[$k]->component = $components[array_rand($components)];
+    }
+    if (rand(0,1)) {
+      $issues[$k]->category = $categories[array_rand($categories)];
+    }
+    if (rand(0,1)) {
+      $issues[$k]->priority = array_rand($priorities);
+    }
+    if (rand(0,1)) {
+      $issues[$k]->title = devel_create_greeking(rand(2, 10), true);
+    }
+    if (rand(0,1)) {
+      $issues[$k]->sid = array_rand(_project_issue_generate_get_permitted_sids($account));
+      if (!isset($issues[$k]->sid)) {
+        unset($comment);
+        continue;
+      }
+    }
+    /**
+     * We put everything in the $issues array before put in $comment to
+     * post it because doing it we keep the $issues array updated with
+     * the latest comments to "randomly" don't change the info if
+     * rand(0,1)==0.
+     */
+    $comment = array();
+    $comment['project_info'] = array('pid' => $issues[$k]->pid, 'component' => $issues[$k]->component);
+    $comment['category'] = $issues[$k]->category;
+    $comment['priority'] = $issues[$k]->priority;
+    $comment['title'] = $issues[$k]->title;
+    $comment['sid'] = $issues[$k]->sid;
+    $comment['assigned'] = $issues[$k]->assigned;
+    if (rand(0,1)) {
+      $comment['comment'] = devel_create_content();
+    }
+    else {
+      $comment['comment'] = '';
+    }
+    $comment['format'] = '1';
+    $comment['cid'] = '';
+
+    drupal_execute('comment_form', $comment, array('pid' => '', 'nid' => $issues[$k]->nid));
+    // We can't assign it before because it causes "an illegal choice"
+    if (rand(0,1)) {
+      $issues[$k]->assigned = $account->uid;
+    }
+    $result = db_query("SELECT MAX(cid) AS cid FROM comments");
+    $newcid = db_fetch_object($result)->cid;
+    db_query("UPDATE {comments} SET uid='%d' WHERE cid='%d'", $account->uid, $newcid);
+    db_query("UPDATE {project_issue_comments} SET assigned='%d' WHERE cid='%d'", $account->uid, $newcid);
+  }
+  drupal_set_message(format_plural($num, 'Your comment has been created.', 'Your comments have been created.'));
+}
+
 function _project_issue_generate_get_field($field, $pool_size = 100) {
   require_once(drupal_get_path('module', 'project_issue') . '/issue.inc');
 
   switch($field) {
+    case 'issues':
+      $issues = array();
+      $results = db_query('SELECT p.nid, p.pid, p.category, p.component, p.priority, p.rid, p.assigned, p.sid, n.title FROM {project_issues} p INNER JOIN {node} n ON n.nid = p.nid');
+      while ($result = db_fetch_object($results)) {
+        $issues[] = $result;
+      }
+      return $issues;
+
     case 'projects':
       $projects = array();
 
diff -urpN drupal-old/sites/all/modules/project_issue/generate/project_issue_generate.info drupal-new/sites/all/modules/project_issue/generate/project_issue_generate.info
--- drupal-old/sites/all/modules/project_issue/generate/project_issue_generate.info	2007-12-09 01:46:25.000000000 -0200
+++ drupal-new/sites/all/modules/project_issue/generate/project_issue_generate.info	2007-12-14 23:51:36.000000000 -0200
@@ -1,5 +1,5 @@
 ; $Id: project_issue_generate.info,v 1.2 2007/12/09 03:46:25 dww Exp $
 name = Project issue generator
-description = Generate random issues.
+description = Generate random issues and comments.
 dependencies = project_issue devel
-package = Development
\ Não há quebra de linha no final do arquivo
+package = Development
diff -urpN drupal-old/sites/all/modules/project_issue/generate/project_issue_generate.module drupal-new/sites/all/modules/project_issue/generate/project_issue_generate.module
--- drupal-old/sites/all/modules/project_issue/generate/project_issue_generate.module	2007-12-09 01:46:25.000000000 -0200
+++ drupal-new/sites/all/modules/project_issue/generate/project_issue_generate.module	2007-12-15 01:47:46.000000000 -0200
@@ -28,6 +28,12 @@ function project_issue_generate_issues_f
     '#default_value' => 100,
     '#size' => 10,
   );
+  $form['cnum'] = array(
+    '#type' => 'textfield',
+    '#title' => t('How many issue comments would you like to generate?'),
+    '#default_value' => 200,
+    '#size' => 10,
+  );
   $form['submit'] = array(
     '#type' => 'submit',
     '#value' => t('Do it!'),
@@ -38,4 +44,5 @@ function project_issue_generate_issues_f
 function project_issue_generate_issues_form_submit($form_id, $form_values) {
   require_once('project_issue_generate.inc');
   project_issue_generate_issues($form_values['num']);
-}
\ Não há quebra de linha no final do arquivo
+  project_issue_generate_issue_comments($form_values['cnum']);
+}
